本文演示如何将 SpringBoot 应用发布到 K8s 集群中。
环境准备
本文使用的进行仓库为使用 Docker Registry 搭建的使用镜像仓库,搭建方法详见 K8s使用 Docker Registry 作为镜像库
如果环境中还没有安装 jdk, 则执行
1 | sudo apt-get install openjdk-8-jdk |
如果环境中还没有安装 maven, 则执行
1 | sudo apt-get install mvn |
为提高构建速度,配置使用国内maven 仓库
在用户目录建立名为 .m2 的目录
1 | mkdir ~/.m2 |
在 .m2 中新建名为 settings.xml 的文件,内容如下:
1 |
|
构建镜像并push到仓库
1 | mvn clean package docker:build |
tag
1 | docker tag todo-srv:0.0.1 192.168.0.135:5000/todo-srv:0.0.1 |
登陆私有仓库
1 | docker login 192.168.0.135:5000 |
根据提示输入用户名和密码
上传镜像
1 | docker push 192.168.0.135:5000/todo-srv:0.0.1 |
发布到 K8s 集群中
在 k8s 集群的 master 机器上,准备分发文件: todo-srv-deploy.yaml
内容如下:
1 | apiVersion: v1 |
保存以后执行
1 | kubectl apply -f todo-srv-deploy.yaml |
查看部署效果
1 | kubectl get pod -o wide |
或者
1 | kubectl get svc -o wide |