前言
在前文中,笔者将了如何制作go语言的dockerfile,并部署到docker。链接地址是:http://blog.csdn.net/niyuelin1990/article/details/79035728
在这篇文章中,笔者将讲下如何将go工程的docker镜像部署到kubernetes。
1.制作yaml文件
首先基于现有的docker镜像,制作出deployment和service。
apiVersion: v1
items:
- apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: mygohttp
labels:
app: mygohttp
spec:
replicas: 1
template:
metadata:
labels:
app: mygohttp
spec:
containers:
- name: mygohttp
image: mygohttp:latest
imagePullPolicy: IfNotPresent
env:
- name: TASKID
value: "hi"
ports:
- containerPort: 8080
resources:
limits:
cpu: 1000m
memory: 1Gi
requests:
cpu: 1000m
memory: 1Gi
- apiVersion: v1
kind: Service
metadata:
name: mygohttp
labels:
app: mygohttp
spec:
type: NodePort
ports:
- port: 8080
targetPort: 8080
selector:
app: mygohttp
kind: List
metadata: {}
注意kubernetes**传递系统**参数采用 如下方式:
env:
- name: TASKID
value: "hi"
2.部署mygohttp服务
kubectl create -f kube-mygohttp.yaml
输出:
deployment "mygohttp" created
service "mygohttp" created
此时我们可以通过 http://10.7.28.129:30836 访问。
通过 kubectl logs -f 实时查看日志。
3.删除mygohttp服务
kubectl delete -f kube-mygohttp.yaml
输出:
deployment "mygohttp" deleted
service "mygohttp" deleted
总结
至此笔者已经讲完整个部署流程,希望大家能有所收获。