我有一个 docker 组成,在那里我拿起两个容器,一个带mariadb容器,一个带wordpress容器。

问题

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



情况

当我转到http://本地主机: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:

错误:



配置错误在哪里?

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

最佳答案

它可能是由于意外关闭导致数据库文件损坏而引起的,您可以删除数据库卷

警告:此操作将删除所有数据库数据

您可以使用docker-compose down -v删除卷,然后执行docker-compose up -d将其调出

在这种情况下,您没有使用卷来存储数据库数据,则可以删除数据并重试。

10-08 09:02
查看更多