[英]How to run docker commands or shell scripts with docker commands from Java application
[英]How to run shell scripts along with java applications using docker?
以下是我的Dockerfile,我將一個文件夾和兩個Java jar文件復制到映像上,目的是執行復制目錄內的腳本文件,然后執行兩個Java應用程序。
FROM openjdk:latest
COPY ./mycluster /dir/latest/
COPY ./app1.jar /dir/latest/
COPY ./app2.jar /dir/latest/
CMD ["sh", "-c", "cd /dir/latest/ ;./local_cluster_startup.sh ./;sleep 5 ;java -jar app2.jar;sleep 5;java -jar app1.jar;"]
構建docker映像並運行以下命令docker container之后運行tryout:nsdap ,輸出為
sh: 1: cd: can't cd to /dir/latest/
sh: 1: ./local_cluster_startup.sh: not found
Error: Unable to access jarfile app2.jar
Error: Unable to access jarfile app1.jar
誰能告訴我這里做錯了什么?
我正在尋找一個最小的docker映像,該映像將能夠執行java jar和shell腳本。 你能幫我嗎? 謝謝
使用WORKDIR( https://docs.docker.com/engine/reference/builder/#workdir )切換到目錄“ / dir / latest”。 然后您可以從該目錄運行命令
WORKDIR /dir/latest
CMD ["./local_cluster_startup.sh ;sleep 5 ;java -jar app2.jar;sleep 5;java -jar app1.jar;"]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.