Tocmai am început în docker și poate încep puțin, dar am găsit un articol care a explicat pentru a obține o instalare coldfusion (rulată de Commandbox) cu mysql. Această compunere docker funcționează foarte bine. Mi-a venit ideea să adaug în phpmyadmin, astfel încât să-l pot conecta la mysql.
Pentru referință, articolul original este aici: https://cfswarm.inleague.io/part3-docker-in-development/part3-running-docker
Așa că am modificat docker compose yml pull în phpmyadmin
versiunea: „3.6” # dacă nu este specificată nicio versiune, se presupune că v1. Recomand v2 minim
volume:
sql-data:
retele:
cfswarm-simplu:
secrete:
cfconfig:
fișier: ./config/cfml/cfconfig.json
Servicii:
cfswarm-mysql: # un nume prietenos. acesta este, de asemenea, numele DNS în interiorul rețelei
imagine: mysql:5.7
container_name: cfswarm-mysql
mediu inconjurator:
MYSQL_ROOT_PASSWORD: „myAwesomePassword”
MYSQL_DATABASE: „cfswarm-simple-dev”
MYSQL_ROOT_HOST: „%”
MYSQL_LOG_CONSOLE: „adevărat”
volume:
- tip: volum
sursa: sql-data
țintă: /var/lib/mysql
porturi:
- 3306:3306
retele:
- cfswarm-simplu
cfswarm-cfml:
imagine: ortussolutions/commandbox:alpine
container_name: cfswarm-cfml
volume:
- tip: bind
sursa: ./app-one
țintă: /app
porturi:
- 8081:8080
env_file:
- ./config/cfml/simple-cfml.env
secrete:
- sursă: cfconfig # acesta nu este cu adevărat un secret, dar implementările fără stivă nu acceptă configurații, așa că hai să o facem una
țintă: cfconfig.json
retele:
- cfswarm-simplu
depinde de:
- cfswarm-mysql
- cfswarm-nginx
cfswarm-două-cfml:
imagine: ortussolutions/commandbox:alpine
container_name: cfswarm-two-cfml
volume:
- tip: bind
sursa: ./app-two
țintă: /app
env_file:
- ./config/cfml/simple-cfml.env
secrete:
- sursă: cfconfig # acesta nu este cu adevărat un secret, dar implementările fără stivă nu acceptă configurații, așa că hai să o facem una
țintă: cfconfig.json
depinde de:
- cfswarm-mysql
- cfswarm-nginx
retele:
- cfswarm-simplu
**phpmyadmin:
imagine: phpmyadmin/phpmyadmin:latest
container_name: phpmyadmin
reporniți: întotdeauna
mediu inconjurator:
PMA_HOST: cfswarm-mysql
PMA_USER: root
PMA_PASSWORD: „myAwesomePassword”
porturi:
- „8082:80”**
cfswarm-nginx:
imagine: nginx
comandă: [nginx-debug, '-g', 'daemon off;']
container_name: cfswarm-nginx
porturi:
- 80:80
- 443:443
volume:
- tip: bind
sursa: ./app-one
țintă: /var/www/app-one
- tip: bind
sursa: ./app-two
țintă: /var/www/app-two
- tip: bind
sursa: ./nginx/
țintă: /etc/nginx
retele:
- cfswarm-simplu
Deci, chiar la linia 63, am adăugat în extragerea pentru phpymyadmin care pare să funcționeze, răspunde pe portul 8082, dar îmi dă o eroare:
MySQL a spus: Documentație
Nu se poate conecta: setări nevalide.
mysqli::real_connect(): php_network_getaddresses: getaddrinfo failed: Eșec temporar în rezolvarea numelui
mysqli::real_connect(): (HY000/2002): php_network_getaddresses: getaddrinfo failed: Eșec temporar în rezoluția numelui
phpMyAdmin a încercat să se conecteze la serverul MySQL, iar serverul a respins conexiunea.Ar trebui să verificați gazda, numele de utilizator și parola în configurația dvs. și să vă asigurați că acestea corespund informațiilor oferite de administratorul serverului MySQL.
Singurul lucru pe care nu am putut să mă apuc de lucru a fost să îl adaug în rețeaua cfswarm-simple. Când am încercat să adaug linia chiar sub porturi (linia 72), primeam o eroare când încercam să pornesc scrierea docker.
Chiar acum, aș dori să mă pot conecta la mysql docker cu docker-ul phpmyadmin.
TIA