Ho creato un piccolo docker-compose.yml
che funzionava come un incantesimo per distribuire piccole istanze di WordPress. Ecco come si presenta:docker-comporre connessione wordpress mysql rifiutata
wordpress:
image: wordpress:latest
links:
- mysql
ports:
- "1234:80"
environment:
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_NAME: wordpress
WORDPRESS_DB_PASSWORD: "password"
WORDPRESS_DB_HOST: mariadb
MYSQL_PORT_3306_TCP: 3306
volumes:
- /srv/wordpress/:/var/www/html/
mysql:
image: mariadb:latest
mem_limit: 256m
container_name: mariadb
environment:
MYSQL_ROOT_PASSWORD: "password"
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: "password"
volumes:
- /srv/mariadb:/var/lib/mysql
Ma quando mi metto subito (forse dall'aggiornamento finestra mobile di Docker versione 1.9.1, costruire a34a1d5
), non riesce
wordpress_1 | Warning: mysqli::mysqli(): (HY000/2002): Connection refused in - on line 10
wordpress_1 |
wordpress_1 | MySQL Connection Error: (2002) Connection refused
Quando ho gatto /etc/hosts
del wordpress_1
ci sono voci per MySQL:
172.17.0.10 mysql 12a564fdbc56 mariadb
e sono in grado di eseguire il ping del server MariaDB.
Quando ho docker-compose up
, WordPress viene installato e dopo diversi riavvii le stampe contenitore MariaDB:
Version: '10.0.22-MariaDB-1~jessie' socket: '/var/run/mysqld/mysqld.sock' port: 3306 mariadb.org binary distribution
Quali schould indicano che sia in esecuzione, non è vero?
Come si ottiene che WordPress sia in grado di connettersi al contenitore MariaDB?
quale porta è il tuo contenitore mysql esponendo 3306? hai una variabile di ambiente: MYSQL_PORT_3306_TCP_PORT? – Michael
Grazie per la risposta. È in esecuzione su 3306, come puoi vedere nel messaggio avviato docker mariadb (scorrere a destra) ... ancora non ho idea, perché questo settaggio non funziona più – Harry
Che è all'interno del contenitore, sto chiedendo qual è la porta esposta sul contenitore docker: porta docker –
Michael