使用openjdk docker镜像执行Java程序
背景
我们可以不必在宿主机上安装JDK或JRE,借助OpenJDK的Docker镜像,来运行一个可执行Java程序(SpringBoot Web应用)。
首先从DockerHub上拉取OpenJDK的镜像,因为我使用的技术栈还是Java 8,因此这里的镜像tag使用了8。
1 | docker pull openjdk:8 |
使用这个镜像有3个方案:
- 将Jar包挂载到openjdk:8的容器中一个目录中
- 将Jar包复制到一个Docker卷中, 然后挂载这个卷到容器
- 将Jar包构建到一个基于openjdk:8镜像的新镜像中
方案一
1 | 切换到Jar包所在目录 |
方案二
1 | 创建一个Docker Volume |
方案三
在Jar包的同级目录下,新建一个Dockerfile文件:
1 | FROM openjdk:8 |
1 | 在Dockerfile的同级目录下执行如下命令 |
参考
CentOS安装OpenJDK 8:
1 | yum install java-1.8.0-openjdk |
Windows 10环境Docker Volume的位置:
1 | \\wsl$\docker-desktop-data\version-pack-data\community\docker\volumes\ |