发布到 Kubernetes
部署到 Kubernetes
如果想把开发业务模块服务部署到Kubernetes集群中,每个服务中都需要有一个deployment.yaml文件,这个文件是Kubernetes的部署文件,用于定义服务的部署信息。
当然默认情况下,如果服务目录下没有deployment.yaml,一般情况下会在根目录扔resource目录下提供相应的模板文档,这个模板方便使用了go语言的模板字符串, 你可以自己重新替换相应的变量,然后放到服务目录下,这样就可以实现自定义部署文件了。
当然更方便的方式是结合平台的自动CI/CD流程,通过jm工具,自动生成部署文件,这样就不用手动创建了。
可以参考文档【自动化构建】。
deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{.name}}
spec:
selector:
matchLabels:
app: {{.name}}
replicas: 1
template:
metadata:
labels:
app: {{.name}}
spec:
containers:
- name: {{.name}}
image: "{{.repository}}"
imagePullPolicy: Always
ports:
- containerPort: {{.port}}
envFrom:
- configMapRef:
name: {{.imageEnvConfigMap}}
结合jm工具,可以通过yaml配置文件,自动生成deployment.yaml文件,生产的原理就是读取根目录/template/deployment.yaml文件,然后替换相应的变量,生成到服务目录下。 然后结合服务器中对应的kubectl命令,执行相应的yaml文件,从docker镜像中心拉取镜像,然后部署到Kubernetes集群中。
Last modified: 20 一月 2025