为什么Docker容器以分离模式退出?

时间:2018-11-14 14:30:52

标签: python docker dockerfile

我有一个Dockerfile:

FROM ubuntu:16.04

RUN apt-get -y update
RUN apt-get -y install wget nano tar unzip bzip2

RUN apt-get -y install python-pip
RUN pip install --upgrade pip

RUN mkdir /opt/docker/
COPY templates/cclib.zip /opt/docker/
RUN cd /opt/docker/ && unzip cclib.zip
RUN cd /opt/docker/cclib && pip install -r requirements.txt

COPY templates/entrypoint.sh /opt/entrypoint.sh
RUN chmod +x /opt/entrypoint.sh

CMD /opt/entrypoint.sh

和entrypoint.sh:

#!/usr/bin/env bash

echo $ENV1
echo $ENV2
echo $ENV3

echo "Starting."
cd /opt/docker/cclib/manuals && python reindex.py $ENV1 $ENV2 $ENV3
echo "Finished."

我使用以下命令启动容器:

docker run -dti --name container --env ENV1="-b Value" --env ENV2="-y 
Value" --env ENV3="-t Value" rmparser:v1

在分离模式下,容器退出,但是脚本未完成其工作, docker logs 显示该脚本没有完成状态或错误。 docker inspect 命令没有帮助(容器的退出状态为0)。我试图在前台模式下运行容器(不带 -d 选项),脚本运行良好,状态为0,没有错误。 我也尝试通过 docker attach 输入容器并运行脚本,它应能正常工作。

更新

程序正确结束。但是我想了解为什么日志没有以分离模式完全写入。

0 个答案:

没有答案
相关问题