java构建docker镜像例子
1.创建脚本存放目录
mkdir /root/docker_test01
2.准备测试例子
vi /root/docker_test01/Hello.java
/**
* Description :
*
* @author : hxl
* Date : Created in 16:36 2024/12/17
* @version :
*/
public class Hello {
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
3.编译Java程序
前提条件是需要安装好jdk
[root@node2 docker_test01]# javac Hello.java
[root@node2 docker_test01]# ls -al
total 12
drwxr-xr-x 2 root root 43 Mar 25 10:52 .
dr-xr-x---. 19 root root 4096 Mar 25 10:52 ..
-rw-r--r-- 1 root root 416 Mar 25 10:52 Hello.class
-rw-r--r-- 1 root root 215 Mar 25 10:52 Hello.java
4.Dockerfile文件
vi /root/docker_test01/Dockerfile
#使用官方的Java运行环境作为父镜像
FROM registry.cn-shenzhen.aliyuncs.com/hxlk8s/openjdk:21
# 将工作目录设置为/app,容器中的目录,不是宿主机的目录
WORKDIR /app
# 将本地的Java源代码复制到工作目录中
COPY Hello.class /app/
# 运行编译后的Java程序
CMD ["java", "Hello"]
5.创建Docker镜像
[root@node2 docker_test01]# cd /root/docker_test01
docker build -t java-hello .
6.运行Docker容器
[root@node2 docker_test01]# docker run -d java-hello
9630ad27d2d2730aced5e3ce692ea15f2d59d89e9de8d66f664060845d15b818
7.查看docker容器运行情况
[root@node2 docker_test01]# docker ps -a
[root@node2 docker_test01]# docker logs 9630ad27d2d2
Hello World!
浙公网安备 33010602011771号