dockerfile立即运行java退出

时间:2017-11-11 11:14:46

标签: java docker

我有以下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退出我的应用程序。

我找不到有什么问题。

2 个答案:

答案 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