Shopware 6 Docker Setup เพิ่ม PHPMyAdmin

Sep 03 2020

ฉันเป็นมือใหม่โดยสิ้นเชิงที่ Shopware และฉันต้องการใช้ PhpMyAdmin สำหรับการตั้งค่า Shopware 6 ในพื้นที่ของฉัน

สำหรับการดาวน์โหลดฉันใช้ที่เก็บ Shopware 6 Development อย่างเป็นทางการ https://github.com/shopware/development

ฉันได้เห็นแล้วว่า docker-compose.yml ได้ใช้สิ่งต่อไปนี้:

app_mysql:
    build: dev-ops/docker/containers/mysql
    environment:
      MYSQL_ROOT_PASSWORD: root
      MYSQL_USER: app
      MYSQL_PASSWORD: app
    networks:
      shopware:
        aliases:
          - mysql

และตอนนี้ฉันต้องการใช้ phpmyadmin ฉันลองทำสิ่งต่อไปนี้:

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 สามารถมองเห็นได้บน localhost: 8181 แต่เมื่อฉันพยายามเข้าสู่ระบบฉันได้รับข้อผิดพลาดต่อไปนี้:

mysqli :: real_connect (): php_network_getaddresses: getaddrinfo ล้มเหลว: ไม่รู้จักชื่อหรือบริการ mysqli :: real_connect (): (HY000 / 2002): php_network_getaddresses: getaddrinfo ล้มเหลว: ไม่รู้จักชื่อหรือบริการ

จะแก้ได้อย่างไร?

คำตอบ

3 NeoAnderson Sep 04 2020 at 00:37

โดยปกติแล้วphpmyadminควรอยู่ในเครือข่ายเดียวกับฐานข้อมูล
ชื่อบริการได้รับการแก้ไขเป็นที่อยู่ IP ของคอนเทนเนอร์ดังนั้นจึงขอแนะนำให้ใช้ชื่อที่อนุญาตโดยRFC1035เพื่อหลีกเลี่ยงปัญหาเพิ่มเติม

ฉันออกlinks:, aliases, depends_onที่เลิก / 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

เรียกใช้คอนเทนเนอร์:

docker-compose up

เปิดhttp://localhost:8181/index.phpในเบราว์เซอร์ ใช้

Server:    app-mysql
Username:  root
Password:  root

สนุก:

Shyim Sep 03 2020 at 18:12

คุณต้องใช้เป็นโฮสต์ mysql หรือ app_mysql

ValeriiPravoslavnyi Sep 03 2020 at 18:16

มันไม่ใช่คำตอบ แต่ลอง http: // localhost: 8001 / มันไม่ใช่ phpMyAdmin แต่เป็นเครื่องมืออื่นAdminer:)

user2863520 Sep 03 2020 at 18:39

คุณควรเชื่อมโยง phpmyadmin และ mysql โดยใช้ไฟล์

links:
      - app_mysql:mysql

ใช้เป็น:

links:
      - mysql

เพิ่มสภาพแวดล้อม:

`PMA_HOST`: mysql