Docker:无法启动服务nginx
我正在使用docker compose处理nginx服务,我创建了docker compose.yml文件:Docker:无法启动服务nginx,docker,nginx,docker-compose,dockerfile,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
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\U ef5152b88a7c\U nginxdocker\U nginx\U 1无法启动
服务nginx:oci运行时错误:container\u linux.go:247:正在启动
container process-caused“process_linux.go:359:container init-caused
\“rootfs_linux.go:54:mounting\\”/root/nginx docker/nginx.conf\\”
根除
\\“/var/lib/docker/aufs/mnt/b463f0e0ca95db8cd570dfb68fcf206df31e86998e725465a7673ca192af8342\\”
在
\\“/var/lib/docker/aufs/mnt/b463f0ca95db8cd570dfb68fcf206df31e86998e725465a7673ca192af8342/etc/nginx/nginx.conf\\”
导致\\“不是目录\\”\“”
:您是否正在尝试将目录装载到文件上(反之亦然)?
检查指定的主机路径是否存在并且是否为预期类型
这与Nginx无关
如果在
docker compose.yml
中使用volumes
,请始终确保冒号左侧的文件:
存在!如果您没有注意到这一点,Docker Compose有时会创建文件夹,而不是“在左侧”(=在主机上)IIRC上的文件。这会导致下一次运行时出现错误。您确定主机文件夹中存在nginx.conf
吗?错误很明显是指nginx.conf不存在于文件夹中。compose命令是从Thank you@Stefano运行的,谢谢您的响应,在我检查nginx.conf的存在后,它工作正常,但现在我面临一个新的nginx:[警报]无法打开错误日志文件:open()“/var/log/nginx/error.log”失败(21:是目录)并且配置中[emerg]1#1:无“事件”部分