我有以下泊坞窗文件来运行我的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'。 –