我有以下docker文件来运行我的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"
我正在使用docker-compose:
运行 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退出我的应用程序。
我找不到有什么问题。
答案 0 :(得分:1)
问题实际上是我的基本图像gidikern / rhel-oracle-jre
我测试过,甚至像ls这样的基本命令也没有用。
暂时切换到openjdk,没关系。
答案 1 :(得分:0)
很可能你的申请中有错误。要调试我建议你在shell中运行容器并手动执行java命令以查看发生了什么。
换句话说:
docker run -it --name app-debug my-app-runner:latest /bin/bash
java -Dspring.profiles.active=sprofileName -jar my.war --spring.config.location=./application.properties