接下来验证上述构建出的容器镜像是否正常工作。创建一个使用该镜像的Deployment资源文件sample-deployment.yaml,内容如下所示:
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
labels:
app: sample
name: sample
spec:
replicas: 1
selector:
matchLabels:
run: sample
template:
metadata:
labels:
run: sample
spec:
containers:
- image: osswangxining/docker-helloworld-go:latest
imagePullPolicy: Always
name: sample
然后通过创建一个对应的服务资源文件sample-service.yaml,暴露端口80,如下所示:
apiVersion: v1
kind: Service
metadata:
labels:
app: sample
name: sample
spec:
ports:
- port: 80
protocol: TCP
targetPort: 8080
selector:
run: sample
type: LoadBalancer
通过运行kubectl apply命令创建部署与服务,如下所示:
kubectl apply -f sample-deployment.yaml kubectl apply -f sample-service.yaml
获取服务的访问地址和端口,如下所示:
kubectl get svc sample NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE sample LoadBalancer 172.19.65.71 47.95.98.78 80:32654/TCP 32s
打开浏览器,输入地址http://47.95.98.78/或者通过curl命令,可以看到该服务输出“Hello world!”的字样。