我只是在试验 coreOS、docker 和fleet。我有下一个 dockerfile:
FROM ubuntu:14.04
RUN echo "deb http://archive.ubuntu.com/ubuntu precise main universe" > /etc/apt/sources.list
RUN apt-get update
RUN apt-get -y install nginx
RUN echo "daemon off;" >> /etc/nginx/nginx.conf
RUN mkdir /etc/nginx/ssl
ADD default /etc/nginx/sites-available/default
EXPOSE 80
CMD ["nginx"]
我从此文件创建了一个图像(“nginx-example”),我可以使用以下命令启动容器:
docker run -v /home/core/share:/var/www:rw -p 80:80 -d nginx-example
现在,我想用fleet启动它,所以我知道我必须创建一个服务文件,然后用fleet启动它。
所以我尝试创建de服务文件(nginx1.service):
[Unit]
Description=MyTry
After=docker.service
Requires=docker.service
[Service]
TimeoutStartSec=0
ExecStartPre=-/usr/bin/docker kill nginx
ExecStartPre=-/usr/bin/docker rm nginx
ExecStartPre=/usr/bin/docker pull nginx-example
ExecStart=/usr/bin/docker docker run -p 80:80 -d nginx-example
ExecStop=/usr/bin/docker stop nginx
我提交并开始了它,但是当我这样做时:
fleetctl list-units
nginx1.service cbbed2c1.../IP failed failed
而且我无法运行 Web 服务器。我认为问题出在服务文件中,但我不知道如何构建它。谢谢你。