Mysql
 sql >> Database >  >> RDS >> Mysql

Docker:il contenitore Drupal collegato al contenitore mysql non può connettersi a mysql durante l'installazione di Drupal

Il seguente docker compone il file avvierà Drupal connesso a un altro contenitore che esegue Mysql

db:
  image: mysql
  environment:
    - MYSQL_ROOT_PASSWORD=letmein
    - MYSQL_DATABASE=drupal
    - MYSQL_USER=drupal
    - MYSQL_PASSWORD=drupal
  volumes:
    - /var/lib/mysql
web:
  image: drupal
  links:
    - db:mysql
  ports:
    - "8080:80"
  volumes:
    - /var/www/html/sites
    - /var/www/private

Tieni presente che il contenitore drupal utilizza collegamenti docker . Questo creerà una voce /etc/hosts chiamata "mysql". Usa questo invece di "localhost" quando esegui le schermate di installazione di drupal.

Nota

La sintassi del file di composizione Docker è cambiata da quando questa risposta è stata originariamente redatta.

Ecco la sintassi aggiornata

version: '2'
services:
  mysql:
    image: mysql
    environment:
      - MYSQL_ROOT_PASSWORD=letmein
      - MYSQL_DATABASE=drupal
      - MYSQL_USER=drupal
      - MYSQL_PASSWORD=drupal
    volumes:
      - /var/lib/mysql
  web:
    image: drupal
    depends_on:
      - mysql
    ports:
      - "8080:80"
    volumes:
      - /var/www/html/sites
      - /var/www/private