最近打算做一个网站,碰巧赶上腾讯云活动,300元购买3年服务器(CPU: 2核 内存: 4GB。60GB SSD,带宽:6Mbps),这种薅羊毛的操作必须买一波~ 废话不多说,开始配置。
本文使用:腾讯云服务器 + SpringBoot + Dockerfile + 腾讯免费Docker私有仓库(可无,有私人仓库方便操作)
第一步,准备一个Spring 并包含Dockerfile的Demo
如果你没有,可以clone我这个地址:GitHub - developer-wgl/SpringDockerDemo: SpringBoot docker容器配置Demo
然后在本地准备docker环境进行本地demo运行测试
1. ./mvnw clean package 根目录下构建打包
2. docker build -t springdemo:v0.1 . 构建docker镜像(不要忽略. )
若出现上述配置拉取超时问题,可找到梯子工具中的”复制终端代理命令“到命令行,然后重试此构建命令。成功如下:
3. docker images 查看镜像是否构建成功,也可以使用Docker Desktop进行查看
4. docker run -p 8082:8082 0fc7f20977c2 运行容器,注意id替换成自己的IMAGE ID。 也可以使用DockerDesktop启动
成功会显示如下:
5. 浏览器打开:http://localhost:8082/app/test ,则可以看到 Hello World!
6. 然后通过将代码push到你的git仓库(private/public,支持如下仓库),下面使用腾讯云私人docker仓库自动打包docker镜像时会用到。下次push代码时会自动触发dockerfile打包镜像
第二步,腾讯云免费Docker私人仓库配置(配置私人仓库方便部署,若部署方便可忽略)
1. 配置命名空间(未注册的自己处理):腾讯云 - 配置命名空间
注意使用个人免费地区服务,我新建的名称为:demo_test
2. 新建配置镜像仓库
3. 新建好之后点击仓库名,选择镜像构建
4. 配置第一步中6的仓库信息
5. 首次配置需手动触发构建(也可以push代码,会自动触发构建)
6. 查看属于你的个人docker仓库操作(docker仓库login、pull、push)
第三步,腾讯云服务器与docker私人仓库镜像关联
我这里使用的是如下系统,方便docker管理:
1. 进入个人服务器命令行,登录docker仓库(在第二步6中复制自己的登录命令)
docker login krccr.ccs.tencentyun.com --username=xxx
2. docker pull krccr.ccs.tencentyun.com/demo_test/springdemo:demo-main (这是我的拉取命令,你可以在第二步6中复制自己的命令,tag在构建处可以查)
若提示以下错误,则说明未登录成功:
Error response from daemon: Head https://krccr.ccs.tencentyun.com/v2/demo_test/springdemo/manifests/v0.1: unauthorized: authentication required
3. docker images 查看镜像是否拉取成功
4. docker run -p 8082:8082 -d 0fc7f20977c2 运行容器,注意id替换成自己的IMAGE ID
5. 你的服务器静态IP:8082/app/test,查看服务是否运行成功
虽然看着比较长,但是一次配置终身受益。下次使用只需要本地 git push,然后服务端拉取镜像run即可