首页 > 解决方案 > Docker WordPress 图像无法连接到数据库

问题描述

我对 docker 映像有疑问。
我刚刚按照本教程获取自定义本地域:https ://medium.com/@francoisromain/set-a-local-web-development-environment-with-custom-urls-and-https-3fbe91d2eaf0

这似乎工作得很好。但现在我似乎无法连接到 Mysql 数据库。
我正在使用 WordPress 图像,我的 docker-compose.yml 文件如下所示:

version: '3.3'
services:
  db:
    image: mysql:5.7
    restart: unless-stopped
    volumes:
      - db_data:/var/lib/mysql
    environment:
      MYSQL_ROOT_PASSWORD: p4ssw0rd!

  phpmyadmin:
    depends_on:
      - db
    image: phpmyadmin/phpmyadmin
    restart: always
    expose:
      - 80
    environment:
      VIRTUAL_HOST: phpmyadmin.local
      VIRTUAL_PORT: 80
      PMA_HOST: db
      MYSQL_ROOT_PASSWORD: p4ssw0rd!

  wordpress:
    depends_on:
      - db
    image: wordpress:latest
    restart: unless-stopped
    working_dir: /var/www/html
    volumes:
      - ./wp-content:/var/www/html/wp-content
    restart: always
    expose:
      - 80
    environment:
      VIRTUAL_HOST: domain.local
      VIRTUAL_PORT: 80
      WORDPRESS_DB_HOST: db:3306
      WORDPRESS_DB_NAME: wp_name
      WORDPRESS_DB_USER: wp_user
      WORDPRESS_DB_PASSWORD: p4ssw0rd!
      WORDPRESS_TABLE_PREFIX: wp_
      WORDPRESS_DEBUG: 1

volumes:
    db_data: {}
networks:
  default:
    external:
      name: nginx-proxy

当我开始运行容器时,我得到的错误是:

wordpress_error 所以现在我知道我的 WordPress 容器和代理正在工作(domain.local),但唯一缺少的是与数据库的连接。

我认为这与“网络”有关,他根本找不到数据库。但我不知道如何连接它。

希望你们中的一个人知道我做错了什么。提前致谢。

标签: mysqlwordpressdockerdocker-compose

解决方案


好的,所以我终于想通了。应该设置为:
rootWORDPRESS_DB_USER

然后一切都会奏效。


推荐阅读