You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

docker-compose构建自定义Nginx镜像却运行默认容器问题咨询

问题排查与解决方案

核心触发原因

  1. 启动服务时未加--build参数,docker-compose优先使用本地缓存的旧nginx/test镜像,若本地之前存在同名标签的默认Nginx镜像,会直接复用不会重新构建你修改后的自定义镜像
  2. docker-compose运行路径错误:你配置的nginx构建路径为nginx(即docker-compose.yml同级的nginx子目录存放Dockerfile),若运行docker-compose up的工作目录不对,无法找到对应Dockerfile,docker-compose会直接拉取远程nginx/test镜像,拉取失败时会 fallback 到官方默认Nginx镜像
  3. 自定义镜像的run.sh启动脚本异常:若脚本执行过程中报错未加载你的自定义Nginx配置、或是启动失败触发重启策略,会表现为默认Nginx的效果

修复步骤

  • 先清理历史缓存的容器和镜像避免干扰:
docker-compose down -v
docker rmi -f nginx/test
  • 启动时强制重新构建镜像:
docker-compose up -d --build
  • 验证容器是否为自定义镜像:
    • 执行docker inspect nginx | grep Image得到容器使用的镜像ID,再执行docker images nginx/test -q对比两个ID是否一致,一致则为你构建的自定义镜像
    • 也可直接进入容器验证自定义文件是否存在:docker exec -it nginx ls /etc/nginx/conf.d/,确认输出包含你传入的default.conf即可

配置补充说明

  • 你的需求要求配套MongoDB容器,当前docker-compose.yml中仅配置了MariaDB,需自行补充MongoDB对应的service配置
  • WordPress服务的container_name拼写错误(当前为wordress,缺少字母p),可自行修正避免后续维护混淆
  • 需确认你的Nginxdefault.conf配置符合路由要求:
    • 根路径/指向容器内/var/www/html/test/index.html
    • /wordpress路径配置fastcgi规则转发到wordpress:9000的php-fpm服务,同时正确配置SCRIPT_FILENAME参数指向WordPress文件目录

内容的提问来源于stack exchange,提问作者DarkSide77

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 05:09:00