{"id":562,"title":"kubesphere\u6784\u5efadevops\u9879\u76ee\uff08laravel)","good":0,"bad":0,"hit":1956,"created_at":"2023-01-15 03:38:45","content":"
\u4ee5\u524d\u516c\u53f8\u91cc\u7528\u5230\u8fc7k8s\u5f53\u65f6\u63a5\u89e6\u611f\u89c9\u4e00\u5934\u96fe\u6c34\uff0c\u5f88\u591a\u4e0d\u6982\u5ff5\u90fd\u6ca1\u542c\u8fc7\uff1b<\/p>
\u540e\u6765\u516c\u53f8\u81ea\u5df1\u6295\u5165\u4e86\u5927\u91cf\u4eba\u529b\u53ca\u65f6\u95f4\u641e\u4e86\u4e00\u5957cicd\u7cfb\u7edf\uff0c\u6548\u679c\u4e0d\u662f\u5f88\u597d\uff0c\u6700\u8fd1\u53d1\u73b0kubesphere\u5f88\u5f3a\u5927\uff0c\u4ea7\u751f\u4e86\u5f88\u591a\u597d\u5947\u5fc3\uff0c\u4e8e\u662f\u5c31\u60f3\u7528\u4e2a\u4eba\u7f51\u7ad9\u6765\u7ec3\u7ec3\u624b<\/p>
\u4e3a\u4e86\u73a9\u8fd9\u4e2a\u4e1c\u897f\u8fd8\u989d\u5916\u4e70\u4e86\u676116G\u7684\u5185\u5b58\uff0c\u52a0\u4e0a\u539f\u6765\u76848G\u5185\u5b58\u52c9\u5f3a\u73a9\u8d77\u6765\u4e86\uff0c\u771f\u7684\u662f\u597d\u5403\u5185\u5b58\uff0c\u4e0d\u7136\u5c31\u53bb\u963f\u91cc\u4e91\u4e0a\u73a9\u73a9\uff0c\u592a\u8d39\u94b1\u4e86\uff1b<\/p>
<\/p>
<\/p>
\u5927\u6982\u6d41\u7a0b\u5c31\u662f\u4e0a\u56fe\u90a3\u6837\uff0c\u56e0\u4e3a\u5728\u672c\u5730\u5f00\u53d1\uff0c\u53ea\u505a\u4e86\u4e2a\u7b80\u5355\u7684\u6d41\u7a0b\uff0c\u8ba9\u4ed6\u80fd\u81ea\u52a8\u90e8\u7f72\u5e76\u8bbf\u95ee\u5f53\u524d\u9879\u76ee\u5373\u53ef\uff1b<\/p>
\u9898\u5916\u8bdd\uff1a\u73a9\u8fd9\u4e2a\u4e1c\u897f\u771f\u7684\u611f\u89c9php\u843d\u9b44\u4e86\uff0c\u8fd9\u4e9b\u4e1c\u897f\u5f88\u591a\u90fd\u662f\u57fa\u4e8ejava,go\u7b49\u4f53\u7cfb\u505a\u7684\uff0c\u7279\u522b\u662fjava,\u53ef\u60dc\u5f53\u5e74\u6ca1\u6709\u9009\u62e9java\uff0c\u540e\u9762\u6709\u7a7a\u8fd8\u662f\u5f97\u597d\u597d\u5b66\u4e60\uff1b<\/p>
\u4e0a\u9762\u90a3\u4e2a\u56fe\u6700\u7ec8\u751f\u6210\u7684\u662f\u4e00\u4e2ajenkins\u914d\u7f6e\u6587\u4ef6\uff0c\u5185\u5bb9\u5982\u4e0b\uff1a<\/p>
\u7b2c\u4e00\u6b65\uff1a \u57fa\u4e8ebase\u5bb9\u5668\u4ecegitee\u4e0a\u62c9master\u5206\u652f\u4ee3\u7801\uff0ccredentialsId\u53d8\u91cf\u4fdd\u5b58\u7684\u662fgitee\u767b\u5f55\u7684\u5e10\u53f7\u53ca\u5bc6\u7801\uff0c\u6ce8\u610f\u62c9\u7684\u65f6\u5019\u9009https\u65b9\u5f0f\uff0c\u4e0d\u7136\u7684\u8bdd\u8fd8\u5f97\u914dssh\u516c\u94a5\uff0c\u6bd4\u8f83\u9ebb\u70e6<\/span><\/p> \u7b2c\u4e8c\u6b65\uff1a<\/span><\/p> \u57fa\u4e8ebase\u5bb9\u5668\uff0c\u767b\u5f55\u963f\u91cc\u4e91\u955c\u50cf\u4ed3\u5e93\uff0c\u62c9\u53d6\u955c\u50cf\uff0c\u7136\u540e\u6839\u636elaravel\u9879\u76ee\u6839\u76ee\u5f55\u4e2d\u7684Dockfile\u6587\u4ef6\u6784\u5efa\u955c\u50cf\uff0c\u5e76\u63a8\u9001\u5230\u963f\u91cc\u4e91\uff1b<\/span><\/p> \u7b2c\u4e09\u6b65\uff0c\u90e8\u7f72\u5230\u5f00\u53d1\u73af\u5883\uff1a<\/span><\/p> kubeconfigId\u4e0eKUBECONFIG_CREDENTIAL_ID \u7684\u503c\u914d\u7f6e\u6210\u4e00\u6837\uff0c\u8fd9\u662fkubeSphere\u524d\u7aef\u754c\u9762\u4e2d\u7684\u4e00\u4e2akubernetesDeploy\u7ec4\u4ef6\uff0c\/deploy\/dev\/**\u5bf9\u5e94laravel\u9879\u76ee\/deploy\/dev\u76ee\u5f55\uff0c\u5b58\u653e\u7684\u662f\u505a\u597d\u7684k8s deployment\u6587\u4ef6\uff08yaml\u683c\u5f0f\uff09<\/span><\/span><\/p> pipeline {<\/p> agent {<\/p> node {<\/p> label 'base'<\/p> }<\/p> }<\/p> stages {<\/p> stage('\u62c9\u4ee3\u7801') {<\/p> agent none<\/p> steps {<\/p> container('base') {<\/p> git(url: 'https:\/\/gitee.com\/hu_rong\/hurong_www.git<\/span>', credentialsId<\/span>: 'gitee', changelog: true, poll: false, branch: 'master')<\/p> sh 'ls -alh'<\/p> }<\/p> }<\/p> }<\/p> stage('pull & build & push') {<\/p> agent none<\/p> steps {<\/p> container('base') {<\/p> sh '''docker login --username=hurong24109 -p=\u963f\u91cc\u955c\u50cf\u52a0\u901f\u7684\u5bc6\u7801 registry.cn-shanghai.aliyuncs.com<\/p> docker pull registry.cn-shanghai.aliyuncs.com\/hu-rong\/com:php7.4.15-cli-swoole4.6.3-tools<\/p> ls -alh<\/p> docker build -t registry.cn-shanghai.aliyuncs.com\/hu-rong\/com:laravel-hurong .<\/span><\/p> docker image list<\/p> docker push registry.cn-shanghai.aliyuncs.com\/hu-rong\/com:laravel-hurong'''<\/p> }<\/p> }<\/p> }<\/p> stage('deploy to dev') {<\/p> agent none<\/p> steps {<\/p> container('base') {<\/p> kubernetesDeploy(enableConfigSubstitution: true, deleteResource: false, kubeconfigId: 'hurong-laravel'<\/span>, configs: '\/deploy\/dev\/**<\/span>')<\/p> }<\/p> }<\/p> }<\/p> }<\/p> environment {<\/p> DOCKER_CREDENTIAL_ID = 'dockerhub-id'<\/p> GITHUB_CREDENTIAL_ID = 'github-id'<\/p> KUBECONFIG_CREDENTIAL_ID = 'hurong-laravel'<\/span><\/p> REGISTRY = 'docker.io'<\/p> DOCKERHUB_NAMESPACE = 'docker_username'<\/p> GITHUB_ACCOUNT = 'kubesphere'<\/p> APP_NAME = 'devops-java-sample'<\/p> }<\/p> parameters {<\/p> string(name: 'TAG_NAME', defaultValue: '', description: '')<\/p> }<\/p> }<\/p>
<\/span><\/p>
<\/p>
<\/p>
<\/p>
<\/p>
<\/p>
<\/p>
<\/p>
<\/p>"}