我有一个版本为 17.06.0-ce
的 docker。当我尝试使用带有命令的 docker 安装 NGINX 时:
docker run -p 80:80 -p 8080:8080 --name nginx -v $PWD/www:/www -v $PWD/conf/nginx.conf:/etc/nginx/nginx.conf -v $PWD/logs:/wwwlogs -d nginx:latest
它表明
docker:来自守护进程的错误响应:oci 运行时错误:container_linux.go:262:启动容器进程导致“process_linux.go:339:容器初始化导致\”rootfs_linux.go:57:安装\\“/appdata/nginx/conf/ nginx.conf\\” to rootfs \\“/var/lib/docker/aufs/mnt/dcea22444e9ffda114593b18fc8b574adfada06947385aedc2ac09f199188fa0\\” at \\“/var/lib/docker/aufs/mnt/dcea22444e9ffda114593b18fc8b574adfada06947385aedc2ac09f199188fa0/etc/nginx/nginx.conf \\” 导致 \\“not a directory\\”\”” :您是否尝试将目录挂载到文件上(反之亦然)?检查指定的主机路径是否存在并且是预期的类型。
如果不挂载 nginx.conf
文件,一切正常。那么,如何挂载配置文件呢?
原文由 Steven Luo 发布,翻译遵循 CC BY-SA 4.0 许可协议
因为 docker 会将
$PWD/conf/nginx.conf
识别为 文件夹 而不是文件。检查$PWD/conf/
目录是否包含nginx.conf
目录。测试
否则,打开 Docker 问题。
使用相同的配置对我来说工作正常。