Shopware 6 Docker安装程序添加PHPMyAdmin

Shopware 6 Docker安装程序添加PHPMyAdmin,docker,phpmyadmin,e-commerce,shopware,shopware6,Docker,Phpmyadmin,E Commerce,Shopware,Shopware6,我是Shopware的初学者,我想在本地Shopware 6设置中使用PhpMyAdmin 对于下载,我使用了官方的Shopware 6开发库 我已经看到docker-compose.yml实现了以下功能: app_mysql: build: dev-ops/docker/containers/mysql environment: MYSQL_ROOT_PASSWORD: root MYSQL_USER: app MYSQL_PASSWORD:

我是Shopware的初学者,我想在本地Shopware 6设置中使用PhpMyAdmin

对于下载,我使用了官方的Shopware 6开发库

我已经看到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:
      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。我尝试了以下方法:

app_mysql:
    build: dev-ops/docker/containers/mysql
    environment:
      MYSQL_ROOT_PASSWORD: root
      MYSQL_USER: app
      MYSQL_PASSWORD: app
    networks:
      shopware:
        aliases:
          - mysql
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\u connect():php\u network\u getaddresses:getaddrinfo失败:名称或服务未知 mysqli::real_connect():(HY000/2002):php_network_getaddresses:getaddrinfo失败:名称或服务未知


我如何解决它呢?

您必须使用mysql或app_mysql作为主机

这不是答案,但请尝试 http://localhost:8001/
它不是phpMyAdmin,而是另一个工具
Adminer
:)

您应该使用

links:
      - app_mysql:mysql
将其用作:

links:
      - mysql
添加环境:

`PMA_HOST`: mysql

通常
phpmyadmin
应与数据库位于同一网络中。
服务名称解析为容器的IP地址,因此建议使用允许的名称以避免其他问题

我删除了
链接:
别名
依赖于已弃用/不需要的
,最后得到了这个
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
在浏览器中。 使用

享受:


我在PMA\u主机的环境部分app\u mysql中使用了。你是什么意思?谢谢,但是当sql服务名为app_mysql时,为什么我应该使用mysql作为链接而不是app_mysql:mysql?这会导致在我重新启动项目时出现未定义的服务链接:/对于本地设置,您还可以使用Dockware(Dockware.io)。Dockware附带了一个完整的docker开发设置,并有adminer per default(/adminer.php),但至少我有不到15个代表,这就是为什么它没有显示为public:D