因为docker上的jdk没有19的,其他的野镜像不敢用,所以我决定自己构建个jdk19镜像,然后以此镜像来部署springboot项目
自定义jdk19镜像
下载jdk19
- 先预先在官网上下载后再用xftp或rz传到当前目录
- 直接用curl下载
curl -O https://download.oracle.com/java/19/latest/jdk-19_linux-x64_bin.tar.gz
创建Dockerfile
在当前目录下创建Dockerfile
vim Dockerfile
- 粘贴以下内容
1 | FROM ubuntu:20.04 |
构建jdk:19镜像
docker build -t yumoyumoyumo/jdk:19 .
.
:代表在当前目录下找Dockerfile文件,可根据Dockerfile文件的路径而修改
测试jdk:19镜像
docker run yumoyumoyumo/jdk:19
- 若输出
java -version
则镜像构建成功
- 若输出
构建SpringBoot项目镜像
在这里我以部署qqbot项目为例:
- 首先在当前目录下创建工作目录
mkdir ~/qqbot
创建Dockerfile
然后在qqbot目录下创建Dockerfile
vim Dockerfile
- 粘贴以下内容
1 | FROM yumoyumoyumo/jdk:19 |
上传jar包
- xftp
- rz
构建qqbot:1.0镜像
1 | docker build -t yumoyumoyumo/qqbot:1.0 . |
启动容器
1 | docker run -d -p 8088:8088 --name qqbot yumoyumoyumo/qqbot:1.0 |
查看容器日志
1 | docker logs [你上面创建的容器id] |
出现以下字样代表启动成功!
更新项目后的部署
若修改了项目代码,重新部署需要以下步骤
- 将项目打成jar包并传到服务器上
- 停止之前启动的容器并删除
docker stop [容器id]
docker container rm [容器id]
- 删除上面创建的SpringBoot镜像
docker image rm [镜像id]
- 再次构建SpringBoot镜像
docker build -t yumoyumoyumo/qqbot:1.0 .
- 启动容器
docker run -d -p 8088:8088 --name qqbot yumoyumoyumo/qqbot:1.0