我有以下泊塢窗文件來運行我的Java應用程序dockerfile運行Java立即退出
FROM gidikern/rhel-oracle-jre
RUN mkdir /application
WORKDIR /application
CMD "java -Dspring.profiles.active=sprofileName -jar my.war --spring.config.location=./application.properties > app.log > 2>&1"
,我使用運行泊塢窗 - 撰寫:
backend_app:
restart: always
image: my-app-runner:latest
ports:
- "8080:8080"
volumes:
- ./app/my.war:/application/my.war:Z
- ./app/application.properties:/application/application.properties:Z
- /srv/docker/backend_app/logs:/application/my.log:Z
tty: true
然而
當我開始我得到我的應用程序不斷使用代碼0退出。
我找不到問題所在。
爲什麼'java -jar my.war'工作? 「war」是一個Web檔案 - 設計爲由Java EE兼容的servlet容器運行。它具有不同的'jar'格式,不能簡單地由java命令執行。 –
我忘了提及applicatoin的工作原理,如果我從docker外部的命令行運行它。 (這是一個war文件,由於來自pom.xml的配置,它是可執行文件) – mangusbrother
好吧,不相關,但我強烈建議不要將它命名爲'.war'。 –