首页 > 解决方案 > mariadb + wordpress 与 docker 的连接错误

问题描述

我有一个 docker-compose,我在其中拿起两个容器,一个带有 mariadb,一个带有 wordpress。

问题

我收到连接失败,显然用户丢失并且无法执行身份验证。

wp-mysql | 2019-08-09 13:21:16 18 [警告] 与 db 的连接 18 中止:>“未连接”用户:“未验证”主机:“172.31.0.3”(此连接>未经验证正常关闭)

情况

当我转到 http://localhost:8010 时,wordpress 服务可用,但连接到数据库时出错。

docker -compose.yml ...

version: '3'

services:
  db:
    container_name: wp-mysql
    image: mariadb
    volumes:
       - $PWD/data:/var/lib/mysql
    environment:
       MYSQL_ROOT_PASSWORD: 12345678
       MYSQL_DATABASE: wordpress
       MYSQL_USER: wordpress
       MYSQL_PASSWORD: wordpress
    ports:
       - "3307:3306"
    networks:
       - my_net
    restart: on-failure

  wp:
    depends_on:
       - db
    container_name: wp-web
    volumes:
       - "$PWD/html:/var/www/html"
    image: wordpress
    ports:
       - "8010:80"
    environment:
       WORDPRESS_DB_HOST: db:3306
       WORDPRESS_DB_USER: wordpress
       WORDPRESS_DB_PASSWORD: wordpress
    networks:
       - my_net

networks:
  my_net:

错误:

wp-mysql | 2019-08-09 13:21:16 18 [警告] 与 db 的连接 18 中止:>“未连接”用户:“未验证”主机:“172.31.0.3”(此连接>未经验证正常关闭)

配置错误在哪里?

为什么wordpress容器不能使用mariadb容器环境中创建的用户?

标签: dockerdocker-compose

解决方案


终于解决了。

在用户@JackNavaRow 的帮助下四处走动之后,解决方案就出来了。

就像重新启动系统并删除卷一样简单。

拿起容器,一切正常。

我把它留在这里以防万一有人遇到这个问题,这不会给更多的转弯。


推荐阅读