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

使用docker-compose启动WordPress报错:依赖服务wpdb:mysql未定义

解决Docker Compose中"Service 'wp' depends on service 'wpdb:mysql' which is undefined"错误

这个报错其实是两个小细节问题导致的,咱们一步步来修复:

1. 服务名称不匹配

你在docker-compose.yml里定义的数据库服务名叫wpdp,但在wp服务的depends_on和links里引用的却是wpdb——Docker Compose严格匹配服务名称,找不到名为wpdb的服务自然会报错。

2. depends_on格式错误

depends_on只需要指定服务名称即可,不需要加:mysql这种后缀,这个后缀是links字段里用来设置别名的格式,不能混用在depends_on里。

另外还要提醒一个潜在坑:你的wp服务环境变量里的WORDPRESS_DB_USER是wp_user,但数据库服务中创建的用户是db_user,这会导致WordPress后续无法连接数据库,也需要一起修正。

修正后的完整docker-compose.yml

version: '3'
services:
  wpdb:
    image: mariadb
    ports:
      - "8081:3306"
    environment:
      MYSQL_ROOT_PASSWORD: "root_password"
      MYSQL_DATABASE: "db_name"
      MYSQL_USER: "db_user"
      MYSQL_PASSWORD: "db_password"
  wp:
    image: wordpress
    volumes:
      - ./:/var/www/html
    ports:
      - "8080:80"
    depends_on:
      - wpdb
    links:
      - wpdb:mysql
    environment:
      WORDPRESS_DB_USER: "db_user"
      WORDPRESS_DB_PASSWORD: "db_password"
      WORDPRESS_DB_NAME: "db_name"

关键修改点说明

  • 把数据库服务名从wpdp改为wpdb,和wp服务里的引用名称统一
  • 移除depends_on里的:mysql后缀,仅保留服务名wpdb
  • 同步wp服务的数据库用户/密码配置,和数据库服务创建的信息保持一致

现在重新运行docker-compose up -d,应该就能正常启动所有服务了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.15 06:45:06