SpringBoot应用在K8S环境下的部署

想要把一个复杂的微服务项目部署到K8S上去,首先我们得学会把单个SpringBoot应用部署上去。

自建镜像仓库

安装私有镜像仓库

由于之后我们需要把镜像推送到私有镜像仓库,我们预先安装好,使用的是Docker公司开发的私有镜像仓库Registry。

  • 下载Registry的Docker镜像;

docker pull registry:2

  • 使用Docker容器运行Registry服务,需要添加环境变量REGISTRY_STORAGE_DELETE_ENABLED=true开启删除镜像的功能;

docker run -p 5000:5000 --name registry2 \
--restart=always \
-e REGISTRY_STORAGE_DELETE_ENABLED="true" \
-d registry:2

  • 修改Docker Daemon的配置文件,文件位置为/etc/docker/daemon.json,由于Docker默认使用HTTPS推送镜像,而我们的镜像仓库没有支持,所以需要添加如下配置,改为使用HTTP推送;

{
  "insecure-registries": ["192.168.3.102:5000"]
}

  • 最后使用如下命令重启Docker服务。

systemctl daemon-reload && systemctl restart docker

镜像仓库可视化

由于私有镜像仓库管理比较麻烦,而docker-registry-ui有专门的页面可以方便地管理镜像,所以我们安装它来管理私有镜像仓库。

  • 下载docker-registry-ui的Docker镜像;

docker pull joxit/docker-registry-ui:latest

  • 使用Docker容器运行docker-registry-ui服务;

docker run -p 8280:80 --name registry-ui \
--link registry2:registry2 \
-e NGINX_PROXY_PASS_URL="http://registry2:5000" \
-e DELETE_IMAGES="true" \
-e REGISTRY_TITLE="Registry2" \
-d joxit/docker-registry-ui:latest

  • 我们先来试试私有镜像仓库是否可用,首先下载一个测试用的镜像busybox

docker pull busybox

  • 给镜像busybox打上私有仓库的标签,并设置版本为v1.0

docker tag busybox 192.168.3.102:5000/busybox:v1.0

  • 之后推送到私有镜像仓库去;

docker push 192.168.3.102:5000/busybox:v1.0

Docker开启远程管理API

在打包上传应用镜像之前,我们需要先开启Docker的远程管理API。

  • 用vim编辑器修改docker.service文件;

vim /usr/lib/systemd/system/docker.service

  • 需要修改的部分:

ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock

  • 修改后的部分:

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值