【发布时间】:2018-04-18 01:46:00
【问题描述】:
我在使用 Docker 工具箱首次在 Windows 上设置 Docker 时遇到问题。目前除了 nginx 一切正常。
错误信息:
ERROR: for web Cannot start service web: OCI runtime create failed: container_linux.go:348: starting container process caused "process_linux.go:402: container init caused \"rootfs_linux.go:58: mounting \\\"/c/wamp64/www/cathaypacific_career/ops/nginx/default.conf\\\" to rootfs \\\"/mnt/sda1/var/lib/docker/aufs/mnt/ff9b27a89b26b0e9091264d04d3a475f18469db3cf3be473c005e2d4c7d4b5ef\\\" at \\\"/mnt/sda1/var/lib/docker/aufs/mnt/ff9b27a89b26b0e9091264d04d3a475f18469db3cf3be473c005e2d4c7d4b5ef/etc/nginx/conf.d/default.conf\\\" caused \\\"not a directory\\\"\"": unknown: Are you trying to mount a directory onto a file (or vice-versa)? Check if the specified host path exists and is the expected type
ERROR: Encountered errors while bringing up the project.
Docker-compose 配置:
version: '3'
services:
web:
container_name: web
image: nginx:1.13.3-alpine
networks:
- web_tier
ports:
- 80:80
volumes:
- ./nginx/default.conf:/etc/nginx/conf.d/default.conf
- ../:/code
- /code/ops/
depends_on:
- app
app:
container_name: app
build: ./php/
networks:
- web_tier
- app_tier
expose:
- '9000'
volumes:
- ./php/settings.conf:/usr/local/etc/php-fpm.d/settings.conf
- ../:/code
- /code/ops/
working_dir: /code
entrypoint: "/bin/sh -c"
command:
- "php-fpm"
env_file: ../.env
depends_on:
- db
db:
container_name: db
image: mysql:5.6.39
networks:
- app_tier
- db_tier
expose:
- '3306'
ports:
- 3306:3306
volumes:
- db_data:/var/lib/mysql
- ./db:/etc/mysql/conf.d
restart: always
env_file: ../.env
networks:
web_tier:
driver: bridge
app_tier:
driver: bridge
db_tier:
driver: bridge
volumes:
db_data:
该问题似乎与 Nginx 有关,无法访问 default.conf 或应用程序认为它是文件夹而不是文件。
我在网上查了问题,有人建议挂载 C: 文件夹,所以我尝试在 Oracle VirtualBox 上挂载它并重新运行docker-compose up 命令,但没有解决问题。
有什么想法吗?
【问题讨论】:
-
能否提供defalut.conf
-
太长了——但基本上只是一个 nginx 配置(监听端口 80,代码的根...) server { listen 80 default_server;听 [::]:80 默认服务器;索引 index.php 索引.html;错误日志/var/log/nginx/error.log; access_log /var/log/nginx/access.log;根 /code/public;
-
我在 Windows 上遇到了与
nginx:alpine相同的问题。奇怪的是它昨天晚上运行良好,当我今天早上尝试重新启动它时,开始出现错误。
标签: docker nginx docker-toolbox