簡體   English   中英

Dockerfile運行可執行文件

[英]Dockerfile run executable

我有一個包含Dockerfile和JAR文件foo.jar

Dockerfile我寫了以下內容:

FROM java:8
EXPOSE 8080
ENTRYPOINT ["java","-jar","foo.jar"]

我通過運行成功構建了映像

docker build -t foo-example .

然后我嘗試通過運行來運行它

docker run -ti --rm -p 8080:8080 foo-example

我收到這個錯誤:

Error: Unable to access jarfile foo.jar

有任何想法嗎?

您應該使用docker COPY或ADD命令。 如下所述,COPY更受歡迎: https//docs.docker.com/engine/userguide/eng-image/dockerfile_best-practices/#add-or-copy

FROM java:8
EXPOSE 8080
COPY foo.jar ~/.
ENTRYPOINT ["java","-jar","foo.jar"]

您需要在容器內部提供foo.jar ,例如將其復制到內部並確保在執行時指定確切的位置。 閱讀有關ADD命令的docker文檔。

基本上你需要在這些方面添加一些東西:

ADD foo.jar foo.jar

使用COPY是另一種選擇:

COPY foo.jar ~/.

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM