Docker环境异常:开发服务器未创建/opt/docker文件夹求助
核对构建配置一致性
确认开发服务器使用的Dockerfile、docker-compose.yml和本地完全一致。检查是否存在本地配置里有RUN mkdir -p /opt/docker创建目录的命令,而服务器配置遗漏;或是volume挂载路径写错(比如本地用相对路径,服务器对应路径不存在导致挂载失败,容器内未生成目标目录)。查看容器启动日志
执行docker logs <容器ID/名称>,检查容器启动过程中是否有报错。比如非root用户运行容器时,无权限写入/opt目录导致创建失败;或是启动脚本中创建目录的命令执行出错。本地WSL可能默认用root用户,服务器为安全切换了用户,这是常见权限差异点。进入容器验证实际状态
执行docker exec -it <容器ID/名称> /bin/bash进入容器,手动查看/opt目录结构,尝试执行mkdir /opt/docker。如果手动创建失败,基本可定位为权限问题;如果能成功创建,说明是构建或启动脚本的逻辑问题。对比Docker版本差异
用docker --version分别查看本地WSL和开发服务器的Docker版本。部分旧版本Docker对RUN命令、volume挂载的处理存在bug,新版本修复后可能导致跨环境表现不一致。检查服务器Docker daemon配置
查看服务器的/etc/docker/daemon.json等配置文件,是否存在限制目录挂载、文件系统权限的规则。比如开启selinux/apparmor安全策略后,可能阻止容器创建特定目录,可临时关闭测试是否解决问题。
内容的提问来源于stack exchange,提问作者Mandroid

