Shopware 6 Docker Setup dodaje PHPMyAdmin
Jestem całkowicie początkującym użytkownikiem Shopware i chcę używać PhpMyAdmin do lokalnej konfiguracji Shopware 6.
Do pobrania użyłem oficjalnego repozytorium Shopware 6 Development https://github.com/shopware/development
Widziałem już, że docker-compose.yml zaimplementował następujące elementy:
app_mysql:
build: dev-ops/docker/containers/mysql
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_USER: app
MYSQL_PASSWORD: app
networks:
shopware:
aliases:
- mysql
a teraz chcę zaimplementować phpmyadmin. Próbowałem następujących rzeczy:
phpmyadmin:
image: phpmyadmin/phpmyadmin
links:
- app_mysql:mysql
depends_on:
- app_mysql
ports:
- 8181:80
environment:
PMA_HOST: app_mysql
MYSQL_ROOT_PASSWORD: root
MYSQL_USER: app
MYSQL_PASSWORD: app
phpmyadmin jest widoczny na localhost: 8181, ale kiedy próbuję się zalogować, pojawiają się następujące błędy:
mysqli :: real_connect (): php_network_getaddresses: getaddrinfo failed: Nazwa lub usługa nieznana mysqli :: real_connect (): (HY000 / 2002): php_network_getaddresses: getaddrinfo nie powiodło się: Nazwa lub usługa nieznana
Jak mogę to rozwiązać?
Odpowiedzi
Zwykle phpmyadminpowinien znajdować się w tej samej sieci co baza danych.
Nazwy usług są tłumaczone na adresy IP kontenerów, dlatego zaleca się używanie nazw dozwolonych przez RFC1035, aby uniknąć dodatkowych problemów.
Usunąłem links:, aliases, depends_onktóre są nieaktualne / nie wymagany, a zakończył się z tym docker-compose.yml.
version: '3.7'
services:
app-mysql:
#build: dev-ops/docker/containers/mysql
image: mysql
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_USER: app
MYSQL_PASSWORD: app
networks:
- shopware
phpmyadmin:
image: phpmyadmin/phpmyadmin
ports:
- 8181:80
environment:
PMA_HOST: app-mysql
PMA_PORT: 3306
PMA_ARBITRARY: 1
networks:
- shopware
networks:
shopware
Uruchom pojemniki:
docker-compose up
Otwórz http://localhost:8181/index.phpw przeglądarce. Posługiwać się
Server: app-mysql
Username: root
Password: root
Cieszyć się:
Musisz użyć jako hosta mysql lub app_mysql
To nie jest odpowiedź, ale spróbuj http: // localhost: 8001 / to nie jest phpMyAdmin, ale to kolejne narzędzie Adminer:)
Powinieneś połączyć phpmyadmin i mysql za pomocą
links:
- app_mysql:mysql
użyj go jako:
links:
- mysql
Dodaj środowisko:
`PMA_HOST`: mysql