当前位置: 首页 > news >正文

苏州个人网站制作公司自己建的网站能赚钱吗

苏州个人网站制作公司,自己建的网站能赚钱吗,一个主机多个网站,sae wordpress 插件tekton 发布 kubernetes 应用 基于Kubernetes 服务部署 Tekton Pipeline 实例#xff0c;部署完成后使用tekton来完成源码拉取、应用打包、镜像推送和应用部署。 本文实现一个 golang-helloworld 项目 CI/CD 的完整流程#xff0c;具体包括以下步骤#xff1a; 从 gitee…tekton 发布 kubernetes 应用 基于Kubernetes 服务部署 Tekton Pipeline 实例部署完成后使用tekton来完成源码拉取、应用打包、镜像推送和应用部署。 本文实现一个 golang-helloworld 项目 CI/CD 的完整流程具体包括以下步骤 从 gitee 仓库拉取代码将源码构建成二进制文件根据 Dockerfile 构建镜像并推送到阿里云ACR镜像仓库使用sed命令替换yaml文件中的镜像地址为上一步构建的镜像使用 kubectl apply -f 命令部署yaml文件到kubernetes集群 示例git仓库https://gitee.com/willzhangee/tekton-golang-demo 创建serviceaccount 镜推送到外部镜像仓库需要进行认证创建登录阿里云ACR仓库的secret kubectl create secret docker-registry aliyun-acr \ --docker-serverhttps://registry.cn-shenzhen.aliyuncs.com \ --docker-usernameyour-username \ --docker-passwordyour-password \ --dry-runclient -o json | jq -r .data..dockerconfigjson | base64 -d /tmp/config.jsonkubectl create secret generic docker-config --from-file/tmp/config.json创建kubernetes secret kubectl create secret generic kubernetes-config --from-file/root/.kube/config创建serviceAccount $ cat serviceaccount.yaml apiVersion: v1 kind: ServiceAccount metadata:name: build-bot secrets:- name: docker-config- name: kubernetes-config --- apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata:name: tekton-kubectl-role rules: - apiGroups:- *resources:- pods- deployments- deployments/scale- deployments/statusverbs:- get- list- watch- create- delete- patch- update --- apiVersion: rbac.authorization.k8s.io/v1 kind: RoleBinding metadata:name: tekton-kubectl-binding subjects: - kind: ServiceAccountname: build-bot roleRef:apiGroup: rbac.authorization.k8s.iokind: Rolename: tekton-kubectl-role应用yaml文件 kubectl apply -f serviceaccount.yaml创建 git-clone task 在执行镜像构建前Dockerfile存放在git仓库中需要将代码克隆到本地需要安装git-clone task这里使用官方task。 kubectl apply -f \ https://raw.githubusercontent.com/tektoncd/catalog/main/task/git-clone/0.9/git-clone.yaml创建kaniko-build task 创建kaniko-build task用于构建dokcer镜像基于官方kaniko-task改造。 $ cat kaniko-build-task.yaml apiVersion: tekton.dev/v1beta1 kind: Task metadata:name: kaniko-build spec:params:- name: IMAGE_URLdescription: Name (reference) of the image to build.- name: IMAGE_TAGdescription: Tag to apply to the built imagedefault: latest- name: DOCKERFILEdescription: Path to the Dockerfile to build.default: ./Dockerfile- name: CONTEXTdescription: The build context used by Kaniko.default: ./- name: EXTRA_ARGStype: arraydefault: []- name: BUILDER_IMAGEdescription: The image on which builds will run (default is v1.5.1)default: gcr.io/kaniko-project/executor:v1.5.1sha256:c6166717f7fe0b7da44908c986137ecfeab21f31ec3992f6e128fff8a94be8a5workspaces:- name: sourcedescription: Holds the context and Dockerfile- name: dockerconfigdescription: Includes a docker config.jsonoptional: truemountPath: /kaniko/.dockerresults:- name: IMAGE_DIGESTdescription: Digest of the image just built.- name: IMAGE_URLdescription: URL of the image just built.steps:- name: build-and-pushworkingDir: $(workspaces.source.path)image: $(params.BUILDER_IMAGE)args:- $(params.EXTRA_ARGS)- --dockerfile$(params.DOCKERFILE)- --context$(workspaces.source.path)/$(params.CONTEXT)- --destination$(params.IMAGE_URL):$(params.IMAGE_TAG)- --digest-file$(results.IMAGE_DIGEST.path)securityContext:runAsUser: 0应用yaml文件 kubectl apply -f kaniko-build-task.yaml创建kubernetes-deploy task 创建kubernetes-deploy task用于部署yaml文件到kubernetes集群。 $ cat kubernetes-deploy-task.yaml apiVersion: tekton.dev/v1beta1 kind: Task metadata:name: kubernetes-deploy spec:workspaces:- name: manifest-dir- name: kubeconfig-dirmountPath: /root/.kubeparams:- name: pathToYamlFiledescription: The path to the yaml file to deploy within the git sourcedefault: deployment.yaml- name: IMAGE_URL- name: IMAGE_TAG- name: KUBECTL_IMAGEdefault: docker.io/bitnami/kubectl:lateststeps:- name: run-kubectlimage: $(params.KUBECTL_IMAGE)workingDir: $(workspaces.manifest-dir.path)script: |sed -i s#IMAGE#$(params.IMAGE_URL)#g $(params.pathToYamlFile)sed -i s#TAG#$(params.IMAGE_TAG)#g $(params.pathToYamlFile)kubectl apply -f $(params.pathToYamlFile)应用yaml文件 kubectl apply -f kubernetes-deploy-task.yaml创建pipeline和pipelinerun $ cat pipeline-run.yaml apiVersion: tekton.dev/v1beta1 kind: Pipeline metadata:name: devops-hello-world-pipeline spec:workspaces:- name: shared-data- name: docker-config- name: kubernetes-configparams:# git-clone- name: git_urltype: string- name: revisiontype: string- name: gitInitImagetype: string# kaniko-build- name: dockerfiletype: stringdescription: reference of the image to build- name: builder_imagetype: stringdescription: reference of the image to build- name: image_urldescription: Url of image repository- name: image_tagdescription: Tag to apply to the built imagedefault: latest# kubernetes-deploy- name: kubectl_imagetype: stringtasks:- name: clonetaskRef:name: git-cloneworkspaces:- name: outputworkspace: shared-dataparams:- name: urlvalue: $(params.git_url)- name: revisionvalue: $(params.revision)- name: gitInitImagevalue: $(params.gitInitImage)- name: build-push-imageparams:- name: DOCKERFILEvalue: $(params.dockerfile)- name: IMAGE_URLvalue: $(params.image_url)- name: IMAGE_TAGvalue: $(tasks.clone.results.commit)- name: BUILDER_IMAGEvalue: $(params.builder_image)taskRef:name: kanikorunAfter:- cloneworkspaces:- name: sourceworkspace: shared-data- name: dockerconfigworkspace: docker-config- name: deploy-to-k8staskRef:name: kubernetes-deployparams:- name: KUBECTL_IMAGEvalue: $(params.kubectl_image)- name: IMAGE_URLvalue: $(params.image_url)- name: IMAGE_TAGvalue: $(tasks.clone.results.commit)- name: pathToYamlFilevalue: deployment.yamlworkspaces:- name: manifest-dirworkspace: shared-data- name: kubeconfig-dirworkspace: kubernetes-configrunAfter:- build-push-image --- apiVersion: tekton.dev/v1beta1 kind: PipelineRun metadata:generateName: devops-hello-world-pipeline-run- spec:serviceAccountName: build-botpipelineRef:name: devops-hello-world-pipelineparams:# git-clone- name: git_urlvalue: https://gitee.com/willzhangee/tekton-golang-demo.git- name: revisionvalue: master- name: gitInitImage#value: gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/git-init:latestvalue: dyrnq/tektoncd-pipeline-cmd-git-init:latest# kaniko- name: dockerfilevalue: ./Dockerfile- name: builder_image# value: gcr.io/kaniko-project/executor:v1.5.1sha256:c6166717f7fe0b7da44908c986137ecfeab21f31ec3992f6e128fff8a94be8a5value: docker.io/bitnami/kaniko:latest- name: image_urlvalue: registry.cn-shenzhen.aliyuncs.com/cnmirror/devops-hello-world- name: image_tagvalue: latest# kubernetes-deploy- name: kubectl_imagevalue: docker.io/bitnami/kubectl:latestworkspaces:- name: shared-datavolumeClaimTemplate:spec:accessModes:- ReadWriteOncestorageClassName: openebs-hostpathresources:requests:storage: 1Gi- name: docker-configsecret:secretName: docker-config- name: kubernetes-configsecret:secretName: kubernetes-config参数说明 gitInitImage执行git clone任务的镜像官方镜像无法访问推荐在docekrhub中查找替代镜像builder_image执行kaniko 构建任务的镜像官方镜像无法访问推荐在docekrhub中查找替代镜像image_url最终构建的应用镜像serviceAccountName指定serviceAccountName用于认证shared-data workspace用于在不同任务之间共享数据PipelineRun中定义了volumeClaimTemplate类型的workspaces能够动态申请所需的持久卷使用kubectl get storageclass命令确认k8s集群有默认可用的storageclass资源可用本示例输出为openebs-hostpath (default)docker-config workspace用于镜像仓库认证的secret卷将secret中的config.json挂载到/kaniko/.docker下kubernetes-config用于访问kubernetes挂载到/root/.kube目录下 应用yaml文件 kubectl create -f pipeline-run.yaml查看pipelinerun执行结果 连接到kubernetes 确认部署的应用 rootkube001:~# kubectl get pods -l rungo-web-app NAME READY STATUS RESTARTS AGE go-web-app-79454cfdd7-dcz7p 1/1 Running 0 64s查看镜像信息 rootkube001:~# kubectl get pods go-web-app-79454cfdd7-dcz7p -o jsonpath{.spec.containers[0].image} registry.cn-shenzhen.aliyuncs.com/cnmirror/devops-hello-world:927ec5cc665690ad798ffbbd02a8db520692951e参考https://juejin.cn/post/7073347226772340749
http://www.hkea.cn/news/14368643/

相关文章:

  • 中冶东北建设最新网站武邑网站建设代理
  • 松江新城建设发展有限公司网站找网站建设企业
  • 重庆蒲公英网站建设公司设计师个人作品展示网站
  • 温州手机网站制作哪家好移动互联网开发作业
  • html5网站模板 站长网品牌型网站建设的好处
  • 网站网络安全怎么做怎么找到仿牌外贸出口公司的网站
  • 网站卖链接制作网站企业
  • 如何申请建设网站flash网站源码免费下载
  • 网站缓存实例wordpress添加导航页面
  • 韩国优秀网站设计欣赏网校课程
  • 企业网站建设 新闻宣传莱州网站建设有限公司
  • 广州seo网站推广费用做电商网站价格
  • 福建微网站建设公司推荐柑桔种植服务网站开发
  • 阿里云这么建设网站企业代理注册公司
  • 51ppt模板免费下载网站表单大师 做网站
  • 全总基层组织建设网站深圳荷坳网站建设公司
  • 湘潭seo长沙网站优化外包公司
  • 单位做网站有哪些做任务的兼职网站
  • 向国旗敬礼做时代新人网站山西推广型网站建设
  • 江苏赛孚建设工程有限公司网站百度极速版免费下载
  • 网站建设目的是什么广西网站建设培训
  • 寻找常州微信网站建设规划设计公司资质要求
  • 夏邑做网站橙光文字游戏制作工具
  • 哪些网站是做数据分析的昆明抖音推广公司
  • 山东查询网站备案网站流量用完了
  • 部门网站建设和维护广州市花都区网站建设公司
  • 网站建设规划方书模板如何免费建个人网站
  • 岳池做网站电话沈阳关键词快照优化
  • 论述网站建设及运营流程网站信任 用户转化
  • 绥化网站建设兼职拍摄制作宣传片企业