根本原因是PHPMYADMIN_HOST和PHPMYADMIN_ARBITRARY环境变量未正确配置导致phpMyAdmin无法连接MySQL需根据MySQL部署方式容器或宝塔直装设置对应HOST值、开启ARBITRARY、映射端口并放行防火墙且必须使用官方all-in-one镜像。phpMyAdmin 容器启动后打不开页面502 或空白根本原因通常是宝塔 docker 管理器里没正确设置 phpmyadmin_arbitrary 和 phpmyadmin_host 这两个环境变量导致 phpmyadmin 不知道该连哪个 mysql 服务。它默认只认 mysql 这个容器名但你本地的 mysql 很可能叫 mysql8、db甚至压根不在 docker 里比如用宝塔直接装的 mysql。实操建议如果 MySQL 在另一个 Docker 容器里必须在 phpMyAdmin 的「环境变量」中添加 PHPMYADMIN_HOST你的mysql容器名如 db并设 PHPMYADMIN_ARBITRARY1否则不生效如果 MySQL 是宝塔面板直装的非容器得把宿主机的 MySQL 端口映射进容器例如加一条端口映射 3306:3306再设 PHPMYADMIN_HOSThost.docker.internalDocker Desktop 可用或直接填宿主机内网 IP如 172.17.0.1同时确认宝塔 MySQL 已允许远程连接bind-address 0.0.0.0 用户授权别漏掉 MYSQL_ROOT_PASSWORD —— 即使你用的是外部 MySQL这个变量也得填随便设个值即可否则官方镜像会卡在初始化逻辑里自定义端口映射后访问 404 或拒绝连接宝塔 Docker 管理器里填的「容器端口」只是声明真正生效靠「端口映射」那一栏。常见错误是只填了 80却没在映射栏里绑定宿主机端口或者绑了 8080:80 却忘了防火墙放行 8080。实操建议映射格式严格为 宿主机端口:容器端口例如想用 http://服务器IP:8081 访问就填 8081:80填成 8081:8080 就会 404phpMyAdmin 官方镜像默认监听 80不支持改容器内端口没有 PORT 环境变量可调所以右边那个数字必须是 80宝塔自带防火墙和云服务器安全组都要手动放行你填的宿主机端口缺一不可用非官方镜像比如 phpmyadmin:fpm启动失败宝塔 Docker 管理器里搜到的 phpmyadmin/phpmyadmin 是带 Apache 的 all-in-one 镜像而 phpmyadmin:fpm 只是 PHP-FPM 进程没有 Web 服务器单独运行必然失败 —— 宝塔不会自动给你配 Nginx。立即学习“PHP免费学习笔记深入” 文心快码 文心快码Comate是百度推出的一款AI辅助编程工具