Docker:无法启动服务nginx

时间:2017-11-08 08:56:13

标签: docker nginx docker-compose dockerfile

我正在使用docker-compose处理nginx服务,我创建了 docker-compose.yml 文件:

    version: '2'
    services:
      nginx:
        image: nginx:1.11.8-alpine
        ports:
          - "8858:80"
        volumes:
          - ./site.conf:/etc/nginx/conf.d/default.conf
          - ./code:/usr/share/nginx/html
          - ./html:/myapp
          - ./site.conf:/etc/nginx/conf.d/site.conf
          - ./error.log:/var/log/nginx/error.log
          - ./nginx.conf:/etc/nginx/nginx.conf:ro

这是 site.conf 文件

    server {
    listen 80;
    index index.html index.php;
    server_name localhost;
    error_log  /var/log/nginx/error.log;
    location / {
       root /usr/share/nginx/html;
    }

    location /html {
       alias /myapp;
    }
}

这是 docker-compose up

的结果
  

错误:对于ef5152b88a7c_ef5152b88a7c_nginxdocker_nginx_1无法启动   service nginx:oci runtime error:container_linux.go:247:starting   容器进程导致“process_linux.go:359:容器init导致   \“rootfs_linux.go:54:mount \\”/ root / nginx-docker / nginx.conf \\“   到rootfs   \\ “的/ var / lib中/泊坞窗/ AUFS到/ mnt / b463f0e0ca95db8cd570dfb68fcf206df31e86998e725465a7673ca192af8342 \\”   在   \\ “的/ var / lib中/泊坞窗/ aufs中的/ mnt / b463f0e0ca95db8cd570dfb68fcf206df31e86998e725465a7673ca192af8342的/ etc / nginx的/ nginx.conf \\”   导致\\“不是目录\\”\“”

     

:您是否尝试将目录挂载到文件上(反之亦然)?   检查指定的主机路径是否存在且是否为预期类型

1 个答案:

答案 0 :(得分:1)

这与Nginx无关。

如果在volumes中使用docker-compose.yml,请始终确保冒号:左侧的文件存在!如果您错过了,有时Docker Compose会创建文件夹而不是“左侧”(主机上的=)IIRC文件。导致下次运行时出现后续错误。