【发布时间】:2020-02-13 10:22:06
【问题描述】:
我正在尝试使用docker 设置wordpress。我在下面包含了我的 yaml 文件。在这里,我将 mariadb_database 设置为 db_tyre。
当我点击docker-compose up -d 时,它正在创建所有需要的wordpress 文件。这也在创建 db_tyre 数据库,但是当我尝试 localhost:8000 时,它给了我Error establishing a database connection。
我检查了 wp-config.php 文件,它有以下几行。
define( 'DB_NAME', 'wordpress');
/** MySQL database username */
define( 'DB_USER', 'wordpress');
/** MySQL database password */
define( 'DB_PASSWORD', 'wordpress');
/** MySQL hostname */
define( 'DB_HOST', 'mariadb:3306');
yml 文件
version: '3'
services:
# Database
db:
image: bitnami/mariadb:latest
volumes:
- db_data:/var/lib/mysql
restart: always
environment:
MARIADB_ROOT_PASSWORD: password
MARIADB_DATABASE: db_tyre
MARIADB_USER: wordpress
MARIADB_PASSWORD: wordpress
networks:
- wpsite
# Wordpress
wordpress:
depends_on:
- db
image: wordpress:latest
ports:
- '8000:80'
restart: always
volumes: ['./:/var/www/html']
environment:
WORDPRESS_DB_HOST: mariadb:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: wordpress
networks:
- wpsite
# phpmyadmin
phpmyadmin:
depends_on:
- db
image: phpmyadmin/phpmyadmin
restart: always
ports:
- '8080:80'
environment:
PMA_HOST: db
MYSQL_ROOT_PASSWORD: password
networks:
- wpsite
networks:
wpsite:
volumes:
db_data:
【问题讨论】:
-
您应该将 db-host 更改为
define( 'DB_HOST', 'db:3306')作为您在 docker-compose 中使用的服务名称 -
@invad0r DB_NAME 和 DB_USER 怎么样?
-
他们应该没问题
标签: php wordpress docker docker-compose