Docker WordPress映像无法连接到数据库

时间:2019-12-04 20:33:32

标签: mysql wordpress docker docker-compose

我对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),但是唯一缺少的是与数据库的连接。

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

希望你们中的一个知道我在做什么错。 预先感谢。

1 个答案:

答案 0 :(得分:1)

好的,所以我终于弄清楚了。
WORDPRESS_DB_USER应该设置为:root

然后一切正常。