Shopware 6 Docker Setup thêm PHPMyAdmin
Tôi là người mới bắt đầu hoàn toàn tại Shopware và tôi muốn sử dụng PhpMyAdmin để thiết lập Shopware 6 tại địa phương của mình.
Để tải xuống, tôi đã sử dụng kho lưu trữ Phát triển Shopware 6 chính thức https://github.com/shopware/development
Tôi đã thấy rằng docker-compost.yml đã triển khai những điều sau:
app_mysql:
build: dev-ops/docker/containers/mysql
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_USER: app
MYSQL_PASSWORD: app
networks:
shopware:
aliases:
- mysql
và bây giờ tôi muốn triển khai phpmyadmin. Tôi đã thử những cách sau:
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 hiển thị trên localhost: 8181 nhưng khi tôi cố gắng đăng nhập, tôi gặp các lỗi sau:
mysqli :: real_connect (): php_network_getaddresses: getaddrinfo không thành công: Tên hoặc dịch vụ không xác định mysqli :: real_connect (): (HY000 / 2002): php_network_getaddresses: getaddrinfo không thành công: Tên hoặc dịch vụ không được biết
Làm thế nào tôi có thể giải quyết nó?
Trả lời
Thường phpmyadminnên ở trong cùng một mạng với cơ sở dữ liệu.
Tên dịch vụ được phân giải thành địa chỉ IP của vùng chứa, do đó, bạn nên sử dụng các tên được RFC1035 cho phép để tránh các vấn đề khác.
Tôi đã gỡ bỏ links:, aliases, depends_onđược tán thành / không cần thiết và kết thúc với điều này 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
Chạy các vùng chứa:
docker-compose up
Mở http://localhost:8181/index.phptrong trình duyệt. Sử dụng
Server: app-mysql
Username: root
Password: root
Thưởng thức:
Bạn phải sử dụng làm máy chủ mysql hoặc app_mysql
Nó không phải là một câu trả lời, nhưng hãy thử http: // localhost: 8001 / nó không phải là phpMyAdmin nhưng nó là một công cụ khác Adminer:)
Bạn nên liên kết phpmyadmin và mysql bằng cách sử dụng
links:
- app_mysql:mysql
sử dụng nó như:
links:
- mysql
Thêm môi trường:
`PMA_HOST`: mysql