k8s部署项目流程

  • 制作镜像(使用Dockerfile)
  • 推送镜像仓库
  • 控制器部署镜像(Deployment)
  • 对外暴露应用(Service、Ingress)
  • 运维(监控升级)

制作镜像

将Java项目(spring boot)打成jar包:

mvn clean package

制作镜像:
Dockerfile

FROM openjdk:8-jdk-alpine
VOLUME /tmp
ADD ./demo.jar demo.jar
ENTRYPOINT ["java","-jar","/demo.jar","&"]
docker build -t java-demo-01:latest .
docker images

在本地启动制作好的镜像,是否可以访问:

docker run -d -p 8111:8111 java-demo-01:latest -t

推送镜像

上传到镜像到镜像服务器(阿里云):
在这里插入图片描述

在这里插入图片描述

登录镜像仓库:

docker login --username=用户名 registry.cn-beijing.aliyuncs.com

给镜像打一个版本号:

docker tag 镜像id registry.cn-beijing.aliyuncs.com/命名空间/java-project-01:1.0.0

实现推送:

docker push registry.cn-beijing.aliyuncs.com/命名空间/java-project-01:1.0.0

部署镜像

kubectl create javademo1 --image=registry.cn-beijing.aliyuncs.com/命名空间/java-project-01:1.0.0 --dry-run -o yaml > javademo1.yaml
kubectl apply -f javademo1.yaml

暴露应用

kubectl scale deployment javademo1 --replicas=3
kubectl expose deployment javademo1  --port=8111 --target-port=8111 --type=NodePort
kubectl get svc
Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐