容器交付流程

image.png

细节过程

image.png

具体实现

代码编译打包

制作镜像

上传镜像仓库

推荐上传至阿里云容器镜像服务
在创建时选择类型为本地仓库
image.png
创建完成后点击仓库,可以看到操作指南,根据指南将打包的镜像推送到仓库中

部署镜像

根据

  1. kubectl create deployment demo1 --image=上传的镜像地址 --dry-run -o yaml > demo1.yaml
  1. kubectl apply -f demo1.yaml

查看创建的pod信息,可以看到IP信息,但是这里是集群内部ip

  1. kubectl get pods -o wide

暴露端口

可以先对服务进行扩容

  1. kubectl scale deployment demo1 --replicas=3

使用service对外暴露,service自身可以实现负载均衡

  1. kubectl expose deployment demo1 --port=8111 --target-port=8111 --type=NodePort

port:集群内其他pod访问本pod的时候,需要的一个port
target-port:是pod暴露出来的port端口,与制作容器时暴露的端口一致
查看

  1. kubectl get svc

可以在PORT(S)这一项中查看到端口信息,比如:8111:3067/TCP,那么在所有节点访问3067端口都可以访问到此服务,在访问时,service负载均衡随机分配到刚才扩容的3个服务中