如何为本地应用程序创建文件和值参数的docker镜像

 浅唱_夏染_744 发布于 2022-12-27 13:16

我有一个java应用程序(jar文件),我希望能够从docker镜像运行.

我创建了一个Dockerfile来创建一个使用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当用户docker run使用参数运行时需要自动传递给命令中的jar文件的数字

额外说明:

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

任何帮助深表感谢.

1 个回答
    1. 在Dockerfile中,使用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文档.)

    2022-12-27 13:20 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有