- 一、Docker启动jar包(不创建镜像)
- 1.查找java镜像
- 2.加载镜像
- 3.查看镜像
- 4.运行镜像,并设置 映射路径及端口。
- 5.列出正在运行的容器。
- 二、使用Dockerfile定制jar镜像
- 1.在jar包所在文件夹创建 Dockerfile 文件
- 2.制作镜像
- 3.运行自定义镜像,并设置 映射路径及端口。
- 三、arm64/aarch64系统内核无法启动解决传送门
docker search java2.加载镜像
docker pull java:83.查看镜像
docker images4.运行镜像,并设置 映射路径及端口。
docker run -d -p 9999:9999 -v /home/license/shiwei-app/magic-api/lib/magic-api-demo.jar:/var/lib/docker/jar/magic-api-demo.jar --name magic java:8 java -jar /var/lib/docker/jar/magic-api-demo.jar
--name 设置容器名字 -p 设置端口映射 -e 设置mysql root用户密码 -d 后台运行容器 -i: 以交互模式运行容器,通常与 -t 同时使用; -i, --interactive=false Keep STDIN open even if not attached -t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用; -t, --tty=false Allocate a pseudo-TTY -v: /home/license/shiwei-app/magic-api/lib/magic-api-demo.jar:/var/lib/docker/jar/magic-api-demo.jar 表示将宿主主机的jar文件,映射到容器中(分号前为宿主主机的路径就是服务器的路径,分号后为容器中的路径)
当jar包有更新时,将jar包放入主机的指定位置,重启docker容器就即可。5.列出正在运行的容器。
docker ps二、使用Dockerfile定制jar镜像 1.在jar包所在文件夹创建 Dockerfile 文件
FROM java:8 MAINTAINER shiwei ADD magic-api-demo.jar /var/lib/docker/images-jar/magic-api-demo.jar EXPOSE 9999 ENTRYPOINT ["nohup","java","-jar","/var/lib/docker/images-jar/magic-api-demo.jar" , ">sys_log.txt &"]2.制作镜像
docker build -t magic-image:tag2 .
注意后面的点(.)表示Dockerfile文件所在的位置,点代表在当前位置。3.运行自定义镜像,并设置 映射路径及端口。
docker run -d -it -p 9999:9999 -v /home/license/shiwei-app/magic-api/lib/magic-api-demo.jar:/var/lib/docker/images-jar/magic-api-demo.jar --name magic-c magic-image:tag2
--name 设置容器名字 -p 设置端口映射 -e 设置mysql root用户密码 -d 后台运行容器 -i: 以交互模式运行容器,通常与 -t 同时使用; -i, --interactive=false Keep STDIN open even if not attached -t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用; -t, --tty=false Allocate a pseudo-TTY -v: /home/license/shiwei-app/magic-api/lib/magic-api-demo.jar:/var/lib/docker/images-jar/magic-api-demo.jar 表示将宿主主机的jar文件,映射到容器中(分号前为宿主主机的路径就是服务器的路径,分号后为容器中的路径)
当jar包有更新时,将jar包放入主机的指定位置,重启docker容器就即可。三、arm64/aarch64系统内核无法启动解决传送门
Docker自定义java镜像(解决java:8镜像不支持arm64/aarch64的问题)