如何运行已安装Nginx的docker容器?

时间:2015-04-26 10:42:45

标签: php nginx docker boot2docker dockerfile

我有 Traceback (most recent call last): File "/usr/local/lib/python2.7/dist-packages/twisted/internet/base.py", line 1192, in run self.mainLoop() File "/usr/local/lib/python2.7/dist-packages/twisted/internet/base.py", line 1201, in mainLoop self.runUntilCurrent() File "/usr/local/lib/python2.7/dist-packages/twisted/internet/base.py", line 824, in runUntilC urrent call.func(*call.args, **call.kw) File "/usr/local/lib/python2.7/dist-packages/scrapy/utils/reactor.py", line 41, in __call__ return self._func(*self._a, **self._kw) --- <exception caught here> --- File "/usr/local/lib/python2.7/dist-packages/scrapy/core/engine.py", line 112, in _next_reques t request = next(slot.start_requests) File "/var/www/spider/crawler/spiders/site.py", line 13, in start_requests meta={'ftp_user': 'test', 'ftp_password': 'test'}) File "/usr/local/lib/python2.7/dist-packages/scrapy/http/request/__init__.py", line 26, in __i nit__ self._set_url(url) File "/usr/local/lib/python2.7/dist-packages/scrapy/http/request/__init__.py", line 61, in _se t_url raise ValueError('Missing scheme in request url: %s' % self._url) exceptions.ValueError: Missing scheme in request url: ftp.site.co.uk/f eed.xml 的docker镜像,使用Dockerfile命令成功构建。 docker build .内容为:

Dockerfile

如何运行我的docker容器以查看FROM ubuntu RUN apt-get update && apt-get install -y nginx php5 php5-fpm ADD . /code 是否有效?

更新:当我尝试使用下一个Dockerfile时:

Nginx

使用FROM ubuntu RUN apt-get update && apt-get install -y nginx php5 php5-fpm RUN sudo echo "daemon off;" >> /etc/nginx/nginx.conf CMD service php5-fpm start && nginx 成功构建,但是当我输入docker build -t my/nginx .命令时,我的终端没有响应:

enter image description here

1 个答案:

答案 0 :(得分:6)

构建图像时,您可能希望使用-t选项指定图像名称。

docker build -t my/nginx .

要运行容器,请使用run命令

docker run --rm -ti my/nginx

您可能应该将以下命令添加到Dockerfile

CMD ["nginx"]

或者使用php5-fpm

CMD service php5-fpm start && nginx

更新。 您应该将nginx作为守护程序运行。安装nginx后,将以下内容添加到Dockerfile中。

RUN echo "daemon off;" >> /etc/nginx/nginx.conf

UPDATE2。

运行中的

-ti选项允许您检查日志消息(如果有)。 通常,您应该使用-d而不是-ti在后​​台运行容器。 您可以使用attach命令附加到正在运行的容器。

您也可以查看docker reference,了解如何停止和删除容器及其他命令。