停止后,docker启动容器

jul*_*era 1 docker

我用这个Dockerfile构建了一个phalcon php图像

FROM ubuntu:14.04

MAINTAINER betojulio

COPY apache2_evogas.conf /tmp/apache2.conf

RUN apt-get update && apt-get install -y \
    apache2 \
    php5-dev \
    php5-mysql \
    libapache2-mod-php5 \
    gcc \
    libpcre3-dev \
    git \
    && rm -rf /var/lib/apt/lists/* \
    && git clone git://github.com/phalcon/cphalcon.git \
    && cd cphalcon/build \
    && ./install \
    && cd /etc/php5/apache2/conf.d \
    && echo 'extension=phalcon.so' > phalcon_php.ini \
    && cp /tmp/apache2.conf /etc/apache2/apache2.conf \
    && a2enmod rewrite

CMD /usr/sbin/apache2ctl -D FOREGROUND
Run Code Online (Sandbox Code Playgroud)

我创建了运行此命令行的容器

docker run -d -p 80:80 --name webserver -v /www:/var/www/html  betojulio/phalcon_project:1.0
Run Code Online (Sandbox Code Playgroud)

一切都运作良好.

我的问题是,在我停止容器后如何重新启动相同容器'webserver'并使用相同选项'-d -p 80:80 -v/www:/ var/www/html'或停止容器后我有删除它并再次创建它?

先感谢您.

Ken*_*ane 6

就像其他答案所说,要启动已停止的容器,您运行:

docker start <container name or id>

如果它不能继续运行,请检查日志:

docker logs <container name or id>

如果您希望容器在出于某种原因停止时自动重启,请查看docker restart策略.

docker run -d --restart=unless-stopped -p 80:80 --name webserver -v /www:/var/www/html  betojulio/phalcon_project:1.0
Run Code Online (Sandbox Code Playgroud)

此外,您可能希望在Dockerfile中将CMD更改为以下内容.

CMD ["apache2", "-D", "FOREGROUND"]
Run Code Online (Sandbox Code Playgroud)