使docker使用wordpress正确访问我的数据库的问题 [英] Issue getting docker to access my database properly with wordpress

查看:524
本文介绍了使docker使用wordpress正确访问我的数据库的问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我对docker还是陌生的-但是我试图建立一个本地测试环境来处理一些wordpress事情。

I'm new to docker all together - but am trying to setup a local test environment to play with some wordpress things.

所以我去了docker站点并拉出了默认的docker .yml文件以了解如何轻松进行操作。

So I went to the docker site and pulled up a default docker .yml file on how to get it going easily.

我仅作了几处更改,但这主要是简单明了的文档。

I've made just a couple changes, but mostly this is a straight forward document.

version: '3'

services:
   db:
     image: mysql:5.7
     volumes:
       - db_data:/var/lib/mysql2
     restart: always
     ports:
         - "3306:3306"
     environment:
       MYSQL_ROOT_PASSWORD: somerootwordpresspw
       MYSQL_DATABASE: testdatabase
       MYSQL_USER: wordpress
       MYSQL_PASSWORD: wordpress

   wordpress:
     volumes:
         - ./WP-TEST/:/var/www/html/
     depends_on:
       - db
     image: wordpress:latest
     ports:
       - "80:80"
     restart: always
     environment:
       WORDPRESS_DB_HOST: db:3306
       WORDPRESS_DB_USER: wordpress
       WORDPRESS_DB_PASSWORD: wordpress
volumes:
    db_data:

当我使用上述.yml文件运行 docker-compose up 时,我看到此错误:

When I run docker-compose up with the above .yml file, I see this error:

MySQL CREATE DATABASE错误:拒绝用户'wordpress'@'%'访问数据库'wordpress'

我觉得很奇怪,因为我正在命名数据库 testdatabase ,所以为什么要尝试创建一个名为

Which I find odd, because I'm naming the database testdatabase, so why is it trying to create a database named wordpress?

当我连接SQL Pro时,可以看到 testdatabase ,但是根据控制台,它试图创建 wordpress 数据库。

When I connected with SQL Pro, I could see testdatabase, but according to the console it's trying to create wordpress db.

如何将其连接到命名数据库,而不是不断创建失败 wordpress

How do I get it to connect to my named DB, instead of constantly failing to create wordpress?

推荐答案

所以我想我明白了。

这真的很简单。在我的.yml文件的wordpress部分中,我需要包含 WP_DB_NAME:testdatabase

It was really simple. In my wordpress portion of my .yml file I needed to include WP_DB_NAME: testdatabase

这样做我的命名测试数据库可以安装wordpress。

By doing that, it used my named testdatabase to install wordpress to.

希望这可以帮助可能偶然发现此问题的人。

Hope this helps people who might stumble across this.

现在.yml文件如下所示:

Now the .yml file looks like this:

version: '3'

services:
   db:
     image: mysql:5.7
     volumes:
       - db_data:/var/lib/mysql2
     restart: always
     ports:
         - "3306:3306"
     environment:
       MYSQL_ROOT_PASSWORD: somerootwordpresspw
       MYSQL_DATABASE: testdatabase
       MYSQL_USER: wordpress
       MYSQL_PASSWORD: wordpress

   wordpress:
     volumes:
         - ./WP-TEST/:/var/www/html/
     depends_on:
       - db
     image: wordpress:latest
     ports:
       - "80:80"
     restart: always
     environment:
       WORDPRESS_DB_HOST: db:3306
       WORDPRESS_DB_NAME: testdatabase
       WORDPRESS_DB_USER: wordpress
       WORDPRESS_DB_PASSWORD: wordpress
volumes:
    db_data:

这篇关于使docker使用wordpress正确访问我的数据库的问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆