本文已参与「新人创作礼」活动, 一起开启掘金创作之路
描述:正常情况下,安装好jdk,直接上传jar包,运行即可,或者在代码层,在package的时候直接打包上传到docker即可,但是巧到是mac下只支持aarch64版本虚拟机(目前是),导致很多之前安装方式都不生效,目前jar包运行用Dockerfile是可行的
docker安装好jdk后如何运行jar包文件
1. java 项目
- 前提准备一个可以运行到java项目,将其打包成jar包,上传到虚拟机(此处省略相关指令,如果不清楚的可以回看我往期文档,里面都有)
- 上传完成后,在虚拟机上新建Dockerfile文件
touch Dockerfile
2. 配置Dockerfile
vi Dockerfile
FROM jdk1.8:latest
ADD mall-admin-1.0-SNAPSHOT.jar usr/local/mall/admin/xxxx-1.0-SNAPSHOT.jar
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","-Xmx512m",
"-Xms512m","usr/local/mall/admin/xxx-1.0-SNAPSHOT.jar"]
2.1 指令讲解
- FORM:由于上篇文章基于芯片m1的mac在Centos8中利用docker安装Java jdk 所遇到及解决的方法 提到安装jdk,且安装的版本上jdk1.在8:lastest,所以我们运行jar包就是基于这个版本的jdk运行的,所以FORM就应该是:
FROM jdk1.8:latest - ADD:将jar包copy到指定的目录下
usr/local/mall/admin/进行安装解压,xxxx-1.0-SNAPSHOT.jar此处写自己上传的jar包 - ENTRYPOINT :一个环境变量的配置
3. 运行该配置文件
docker build -t='admin:1.0.0' .
4.docker指令启动java jar包
docker run -di --name=admin -p 8080:8080 admin:1.0.0