Подключитесь к службе MySQL Docker из пользовательского файла конфигурации WordPress - PullRequest
0 голосов
/ 25 апреля 2019

Я хочу подключить мою службу docker mysql к моей службе docker wordpress через специальный файл wp-config. Это кажется простым делом, но я не могу найти однозначного ответа.

Я просто хочу знать, что ввести в качестве значения для этого объявления в файле wp-config.php: define( 'DB_HOST', what_do_i_type_here );

Мне удалось подключиться через 0.0.0.0:3307 на моем хост-компьютере, и я могу подключиться, используя переменные окружения wordpress image WORDPRESS_DB_HOST и т. Д., Но я не смог выяснить, как вручную подключиться через файл wp-config.

Вот несколько хостов, которые я пробовал:

0.0.0.0:3307
127.0.0.1:3307
172.23.0.1:3307
docker.for.mac.localhost:3307
host.docker.internal:3307

Вот мой докер-композитор:

version: '3.3'

services:
  db:
    image: mysql:5.7
    volumes:
      - db_data:/var/lib/mysql
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: somewordpress
      MYSQL_DATABASE: wordpress
      MYSQL_USER: wordpress
      MYSQL_PASSWORD: wordpress
    ports:
      - "3307:3306"
  wordpress:
    depends_on:
      - db
    image: wordpress:latest
    ports:
      - "8000:80"
    links:
      - db:mysql
    volumes:
      - ./wp-content:/var/www/html/wp-content
      - ./wp-config.php:/var/www/html/wp-config.php
      - ./wp-blog-header.php:/var/www/html/wp-blog-header.php
    restart: always
  phpmyadmin:
    depends_on:
      - db
    image: phpmyadmin/phpmyadmin
    links:
      - db:mysql
    ports:
      - "8009:80"
    environment:
      MYSQL_USERNAME: wordpress
      MYSQL_ROOT_PASSWORD: somewordpress
volumes:
  db_data: {}

Вот конфигурации в моем файле wp-config:

# Database Configuration
define( 'DB_NAME', 'wordpress' );
define( 'DB_USER', 'wordpress' );
define( 'DB_PASSWORD', 'wordpress' );
define( 'DB_HOST', '0.0.0.0:3307' );

// define( 'DB_HOST_SLAVE', '127.0.0.1' );
define('DB_CHARSET', 'utf8');
define('DB_COLLATE', 'utf8_unicode_ci');

1 Ответ

1 голос
/ 25 апреля 2019

Посмотрите на эту страницу: Сеть в составе

Каждый контейнер может связаться с другим по имени хоста. Вы можете использовать define( 'DB_HOST', db:3306 ); в файле wp-config.php.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...