容器化部署至k8s
文章平均质量分 82
CICD整个流程,从制作docker镜像到部署至k8s
天草二十六_简村人
不仅能吃辣,还能吃苦。
展开
-
k8s部署java微服务程序时,关于配置conusl acl token的方法总结
环境变量这么整下来,到底应该去哪看呢?当进入pod容器,ps进程也看不到。只有输入env | grep consul才能看到应用程序的环境变量。好了,本文就总结到这里。原创 2024-02-27 17:38:53 · 887 阅读 · 0 评论 -
开源项目ChatGPT-Next-Web的容器化部署(二)-- jenkins CI构建并推送镜像
接着上文已制作好了Dockerfile,接下来就是docker build/tag/push等一系列操作了。不过在这之前,你还必须在jenkins等CI工具中,拉取源码,然后build构建应用。因为本文的重点不是讲述jenkins ci工具,所以只会把核心的一些知识交待清楚。但是,本文的内容,都是由jenkins完成。原创 2024-03-22 15:00:33 · 1166 阅读 · 0 评论 -
开源项目ChatGPT-Next-Web的容器化部署(三)-- k8s deployment.yaml部署
至此,开源项目ChatGPT-Next-Web的容器化部署至k8s就梳理完毕了。作为一个nodejs后端程序,它不同于h5静态页面,类似于java程序,但又没有java复杂。另外,每个Nodejs程序的Dockerfile可能都不一样,但是java程序就又相对一致了。原创 2024-03-22 15:22:05 · 525 阅读 · 0 评论 -
开源项目one-api的k8s容器化部署(下)-- 部署至k8s
访问地址: http://{ip}:{port} (port就是上文指定的端口号)至此,对开源项目one-api的k8s容器化部署就完成了。原创 2024-04-10 16:36:27 · 872 阅读 · 0 评论 -
开源项目ChatGPT-Next-Web的容器化部署(一)-- 优化Dockerfile
Dockerfile建议优化一把,下一篇我们将整理在jenkins ci过程,如何构建并推送镜像。原创 2024-03-22 13:56:40 · 812 阅读 · 0 评论 -
阿里云SLB监听虚拟服务器组时,既有部署在k8s容器里的应用,又有部署在ecs机器上的应用,k8s应用无法连接部署在ecs机器上的应用
本文我们通过一个实际案例,踩到了一个slb使用过程中的大坑,特别对于混合式部署的场景。在使用slb监听虚拟服务器组的时候,不要混用,否则出现非常诡异的现象,真让人莫名其妙。。由于我们无法得到阿里云slb的实现逻辑,跟k8s有关,下面是我根据结果逆向猜测:当K8S容器中的应用要访问同样部署在k8s容器里的另外一个应用时,它会遵循k8s的内部网络机制,而且忽略了slb下的非k8s容器里的应用。原创 2024-05-08 20:57:21 · 1402 阅读 · 2 评论 -
阿里云k8s环境下,因slb限额导致的发布事故
在没有解决问题前,只能在Kong的upstream配置pod IP,而非slb ip。虽然能解决,但是不够动态,显然是临时解决方案。因为我们没有去做动态注册kong upstream。原创 2024-03-07 23:22:06 · 973 阅读 · 0 评论 -
在阿里云K8S容器中,部署websocket应用程序的总结
你需要新建三个service,一般我们只有一个就足够使用了。你需要区分内网还是外网SLB,这是因为我们外层没有api网关和域名,提供的是tcp协议。下一篇我们想要说一说阿里云slb的一个大坑,很深很深的坑。。。原创 2024-05-08 19:27:55 · 839 阅读 · 0 评论 -
开源项目one-api的k8s容器化部署(上)-- 制作镜像及部署准备
整个的篇幅比较长,将会分成上下两篇来阐述。原创 2024-04-10 16:34:51 · 1709 阅读 · 0 评论 -
阿里云k8s容器部署consul集群的高可用方案
metadata:data:},"acl": {datacenter和consul server所在的dc保持一致bind_addr 采用读取的方式,不能写死acl 填写consul集群的访问token好了, consul的高可用部署就写到这里。本文是以java服务注册到consul为示例,给你讲述了从部署到接入的全过程。原创 2024-02-21 16:54:17 · 1211 阅读 · 4 评论 -
开源项目ChatGPT-Next-Web的容器化部署(四)-- k8s容器部署使用configmap配置
本文的内容是在k8s容器中,如何使用configmap对.env文件进行挂载,实现环境的差异化配置。原创 2024-04-11 16:41:23 · 1293 阅读 · 0 评论 -
Devops系列四(使用argocd部署java应用到k8s容器)
每次更新部署的时候,你只要修改git工程里的devops-service/values.yaml中的版本号,argocd就会自动触发部署。后文有jenkins这款CI工具后,如果要把CI和CD串联起来,做到自动化,只需要在jenkins里修改values.yaml文件中的版本号。这也就是gitops是思想,基于git代码的提交触发以前人工的操作。本文把我在使用argocd的过程中遇到的坑都一一总结出来,希望后来者有个对照。原创 2023-07-06 09:29:12 · 1992 阅读 · 0 评论 -
Devops系列五(CI篇之pipeline libraray)jenkins将gitlab helm yaml和argocd 串联,自动部署到K8S
本文是CI篇的上文,因为上一篇已经作了总体设计,就不再赘述,有需要的请看前文。我们将演示,使用CI工具–jenkins,怎么和CD工具–argocd串联,重点是在Jenkins该怎么做。准备工作和argocd等相关事项,在前文已铺垫ok。Jenkins,我们是使用k8s来部署的一个master-slave结构的集群。在开发环境,Jenkins和argocd都是部署在同一个k8s集群。接下来,我们的java应用服务,也都将部署在该K8S里。原创 2023-07-08 11:22:30 · 2703 阅读 · 0 评论 -
Devops系列六(CI篇之jenkinsfile)jenkins将gitlab helm yaml和argocd 串联,自动部署到K8S
上文我们说了pipeline,已为本文铺路不少,接下里就是将之串联起来。先想说下,为什么是jenkinsfile, 因为jenkins job还支持pipeline方式。这种方式,不建议实际使用,仅限于测试或调试groovy代码。下面贴出来,我们的使用方式。好处是:采用分布式的思想,改动git上的jenkinsfile,就可以让所有的job更新。原创 2023-07-08 12:45:14 · 1824 阅读 · 0 评论 -
Devops系列二(使用helm chart,将java应用发布部署至k8s的示例)
登录nexus,查看上传的chart。可以看到,chart上传成功。接下里,就是我们在k8s的控制台,将在下一篇文章进行描述。原创 2023-06-30 21:13:07 · 813 阅读 · 0 评论 -
Devops系列一(制作并发布java项目的docker镜像)
作为云原生架构下的devops开发,怎么能离得了Docker呢,本文作为devops系列文章的第一篇,将详细说明如何制作一个docker镜像,以及推送到镜像仓库,直到拉取镜像,运行一个容器的整个过程。原创 2023-06-29 17:56:58 · 446 阅读 · 0 评论 -
Devops系列三(拉取私库的helm chart,将java应用发布部署至k8s的示例)
因为deployment.yaml中的变量CONFIG_SERVICE_ENABLED对应的值,应该是字符串,但是我赋值的是一个布尔类型。value: 'false' - name: CONFIG_SERVICE_ENABLED # 修改前的代码,没有单引号引起来 # value: {{ .Values.env.configServiceEnabled }} # 修改后的代码 value: '{{ .Values.env.configServiceEnabled }}'原创 2023-06-30 22:08:59 · 531 阅读 · 3 评论