【问题标题】:Problem to access mysql using phpadmin interface (UBUNTU 20.04)使用 phpmyadmin 界面(UBUNTU 20.04)访问 mysql 的问题
【发布时间】:2022-01-21 02:47:49
【问题描述】:

我是 docker 的初学者。我用mysql和phpmyadmin启动了一个docker compose来做一个简单的测试,但是我在使用phpMyAdmin接口访问MySQL服务器时遇到了一些问题。

我正在使用 UBUNTU 20.04

当我尝试使用 phpMyAdmin (http://localhost:9090/) 中的凭据访问 MySQL 服务器时,我收到此错误:

mysqli::real_connect(): php_network_getaddresses: getaddrinfo failed: Temporary failure in name resolution

mysqli::real_connect(): (HY000/2002): php_network_getaddresses: getaddrinfo failed: Temporary failure in name resolution

下面还有关于 phpmyadmin 错误的 docker 日志

phpmyadmin_1  | AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 172.18.0.4. Set the 'ServerName' directive globally to suppress this message
phpmyadmin_1  | AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 172.18.0.4. Set the 'ServerName' directive globally to suppress this message
phpmyadmin_1  | [Sun Dec 19 12:12:17.249145 2021] [mpm_prefork:notice] [pid 1] AH00163: Apache/2.4.38 (Debian) PHP/7.4.20 configured -- resuming normal operations
phpmyadmin_1  | [Sun Dec 19 12:12:17.249624 2021] [core:notice] [pid 1] AH00094: Command line: 'apache2 -D FOREGROUND'

能否请您帮助我了解我是否需要在我的 Ubuntu 环境中进行一些设置,或者 docker-compose 文件是否有误?

关注我的 docker-compose.yaml

 version: '3.5'

 services:
   mysql:
     image: mysql
     command: --default-authentication-plugin=mysql_native_password
     ports:
       - 3306:3306
   environment:
     MYSQL_USER: root
     MYSQL_ROOT_PASSWORD: 123456
   volumes:
     - mysql:/var/lib/mysql
   security_opt:
     - seccomp:unconfined

 phpmyadmin:
   image: phpmyadmin/phpmyadmin:latest
   links:
     - mysql
   ports:
     - 9090:80
   environment:
     - PMA_ARBITRARY=1

 rabbitmq:
   image: rabbitmq:3.8.3-management
   ports:
     - 5672:5672
     - 15672:15672
   volumes:
    - $PWD/storage/rabbitmq1:/var/lib/rabbitmq
   environment:
     - RABBITMQ_ERLANG_COOKIE=This_is_my_secret_phrase
     - RABBITMQ_DEFAULT_USER=admin
     - RABBITMQ_DEFAULT_PASS=admin

卷: mysql: 兔子MQ: phpmyadmin:

【问题讨论】:

  • 您可以编辑问题以包含错误的文本,而不是图像的链接吗? RabbitMQ 设置对这个问题很重要,还是可以删除它?您如何配置管理控制台以连接到数据库?是否有任何应用程序代码是此设置的一部分?
  • 嗨,大卫,我按照您的建议包含了文本错误。关于 RabbitMQ 设置导入到我的项目。我相信 RabbitMQ 不包含错误,因为当我尝试上传 docker-compose 服务时,RabbitMQ 工作正常。我也上传了有问题的 docker 日志。

标签: spring-boot docker docker-compose phpmyadmin


【解决方案1】:

您的 phpMyAdmin 容器不知道在哪里可以找到 MySQL 数据库服务器。您需要:

  • 链接 MySQL 容器(您已经这样做了),
  • 向 phpMyAdmin 提供配置文件,或者
  • 登录 phpMyAdmin 时提供正确的连接详细信息。

Docker 镜像的所有选项都记录在phpMyAdmin Docker hub page

对于您的特定 docker-compose 文件,有效的连接详细信息是:

【讨论】:

  • 嗨 andrzwjwp,我尝试在链接行中包含 mysql:db 但没有工作。我用一些错误更新了我的问题。也许可以帮助您理解问题。非常感谢。
  • 嗨,我仔细检查了这一点,当您使用确切的 docker-compose.yml 创建新堆栈时 - 它适用于我在屏幕截图中提供的凭据和服务器名称。您甚至不必更新 yaml 文件的容器链接部分。
猜你喜欢
  • 2021-08-06
  • 1970-01-01
  • 1970-01-01
  • 2020-08-09
  • 2020-10-04
  • 1970-01-01
  • 2012-03-12
  • 1970-01-01
  • 2015-06-17
相关资源
最近更新 更多