加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 如何为本地应用程序创建Docker映像文件和值参数

发布时间:2020-12-14 16:28:52 所属栏目:Java 来源:网络整理
导读:我有一个 java应用程序(jar文件),我想要能够从码头图像运行. 我创建了一个Docker文件来创建一个使用centos作为基础的图像,并安装java本身: DockerfileFROM centosRUN yum install -y java-1.7.0-openjdk 我运行docker build -t me / java7以获取图像me / ja
我有一个 java应用程序(jar文件),我想要能够从码头图像运行.

我创建了一个Docker文件来创建一个使用centos作为基础的图像,并安装java本身:

Dockerfile
FROM centos
RUN yum install -y java-1.7.0-openjdk

我运行docker build -t me / java7以获取图像me / java7

但是我陷入了一些死胡同.

>如何将jar文件从主机复制到图像/容器中
>我需要2个参数. 1是一个文件,需要在运行时将其复制到容器中.另一个是一个数字,需要在java -jar命令中自动传递到jar文件,当用户使用参数运行docker运行时

额外备注:

jar文件是一个本地文件.通过wget或任何东西无法访问任何地方.目前最接近的是包含它的Windows共享.我也可以从git存储库访问源代码,但这将涉及编译所有内容,并在映像上安装maven和git,所以我宁愿避免这种情况.

任何帮助深表感谢.

解决方法

>在Docker文件中,使用ADD添加本地文件,例如
ADD your-local.jar /some-container-location

>您可以使用卷在运行时将文件放在容器中,例如

VOLUME /copy-into-this-dir

然后你运行使用

docker run -v=/location/of/file/locally:/copy-into-this-dir -t me/java7

您可以使用ENTRYPOINT和CMD传递参数,例如

ENTRYPOINT ["java","-jar","/whatever/your.jar"]
CMD [""]

然后再运行使用

docker run -v=/location/of/file/locally:/copy-into-this-dir -t me/java7 --myNumber 42

(看看Dockerfile documentation)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读