python docker容器启动后立即退出

python docker容器启动后立即退出

我正在尝试运行一个 python 容器以用作虚拟开发环境。我正在使用自定义编写的 构建自己的 docker 映像Dockerfile。映像构建始终成功,但是当我从映像运行容器时,它在启动时立即退出。我似乎无法弄清楚为什么会发生这种情况。

我的Dockerfile

# Creates Python2.7.10 image for a python  dev environemnt on CentOs 7.x

FROM centos:latest

MAINTAINER nmd

# Installs dependencies
RUN yum update -y && \
yum groupinstall development -y && \
yum install -y \
openssl \
openssl-devel \
bzip2-devel \
gcc \
tar \
wget \
zlib-dev \
git \
sudo \
sqlite-devel

# Downloads and installs Python
RUN mkdir /tmp_python && \
cd /tmp_python && \
wget --no-check-certificate https://www.python.org/ftp/python/2.7.10/Python-
2.7.10.tgz && \
tar -zxvf Python-2.7.10.tgz && \
cd /tmp_python/Python-2.7.10 && \
./configure --prefix=/usr/local && \
make && \
make altinstall && \
export PATH="/usr/local/bin:$PATH"

# Installs pip
RUN cd /tmp_python && \
wget --no-check-certificate https://bootstrap.pypa.io/get-pip.py && \
python get-pip.py

# Installs virtualenv
RUN pip install virtualenv

# Creates working directory
ADD . /code
WORKDIR /code

# Default command
CMD ["python"]

当我这样做时docker ps -a,这就是我看到的:

[root@centos python]# docker run -d --name python-dev a9f468205931
[root@centos python]# docker ps -a
CONTAINER ID        IMAGE               COMMAND                  CREATED             
STATUS                         PORTS               NAMES
c47908801503        a9f468205931        "python"                 34 minutes 
ago      **Exited (0)** 34 minutes ago                          python-dev
                     PORTS               NAMES

如您所见,容器已经退出。

答案1

你需要:

docker run -dit --name python-dev a9f468205931

-d, --detach 在后台运行容器并打印容器 ID

-i, --interactive 即使未连接,也保持 STDIN 打开

-t, --tty 分配伪 TTY

相关内容