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

前端之家收集整理的这篇文章主要介绍了java – 如何为本地应用程序创建Docker映像文件和值参数前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我有一个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)

猜你在找的Docker相关文章