docker-撰写 phpmyadmin 踢出

docker-compose phpmyadmin kicks out

我正在尝试使用 docker-compose.yml 来启动 mariabdphpmyadmin。当我在 phpmyadmin 上编辑某些内容时,它会将我踢出登录页面。

db:
  image: mariadb
  environment:
    MYSQL_ROOT_PASSWORD: Pass123
  restart: always
  volumes:
    - "./.data/db:/var/lib/mysql/:rw"
phpmyadmin:
  image: phpmyadmin/phpmyadmin
  links:
    - db:mysql
  ports:
    - 8181:80
  environment:
    MYSQL_USERNAME: root
    MYSQL_ROOT_PASSWORD: Pass123
    PMA_HOST: mysql

我已经尝试使用带有 busybox 的卷容器来保存 mysql 的数据,将 mariabd 更改为 mysql 图像。但我不明白解决方案。我应该怎么做才能解决这个问题?

提前致谢

phpmyadmin/phpmyadminDocker镜像支持的环境变量集与mariadb镜像不同。尝试将 phpmyadmin 服务的 MYSQL_USERNAMEMYSQL_ROOT_PASSWORD 变量分别替换为 PMA_USERPMA_PASSWORD

我不明白link

的意思
links:
- db:mysql

phpmyadmin/phpmyadmin的配置文件(/www/config.inc.php) 默认说数据库服务器的主机名 if 'db' :

$hosts = array('db');

当您将数据库服务器命名为 'db' 时,link 应该这样写:

links:
- db

如果您的数据库名称容器不是 'db',您应该添加具有正确名称的环境变量 PMA_HOST=(或 PMA_HOSTS,如果是多数据库服务器)

所有环境变量都是无用的(我认为即使在数据库配置中也是如此)