arm64v8/phpmyadmin本镜像为官方phpMyAdmin镜像的arm64v8架构专用版本,用于在ARM64平台上提供phpMyAdmin的容器化部署。phpMyAdmin是一款基于PHP开发的免费开源工具,旨在通过Web界面管理MySQL和MariaDB数据库。它支持数据库、表、列、关系、索引、用户及权限等日常管理操作,同时允许直接执行SQL语句。
维护方:phpMyAdmin团队
获取帮助:Docker社区Slack、Server Fault、Unix & Linux或Stack Overflow
apache、fpm、fpm-alpine三种镜像变体| 标签 | Dockerfile链接 |
|---|---|
5.2.3-apache, 5.2-apache, 5-apache, apache, 5.2.3, 5.2, 5, latest | apache/Dockerfile |
5.2.3-fpm, 5.2-fpm, 5-fpm, fpm | fpm/Dockerfile |
5.2.3-fpm-alpine, 5.2-fpm-alpine, 5-fpm-alpine, fpm-alpine | fpm-alpine/Dockerfile |
完整标签列表见Docker Hub
若MySQL/MariaDB已容器化部署(名称为mysql_db_server),可通过--link参数链接:
shdocker run --name phpmyadmin -d \ --link mysql_db_server:db \ -p 8080:80 \ arm64v8/phpmyadmin
访问http://localhost:8080即可打开phpMyAdmin界面,使用数据库凭证登录。
通过PMA_HOST环境变量指定外部数据库地址,PMA_PORT指定端口(默认3306):
shdocker run --name phpmyadmin -d \ -e PMA_HOST=192.168.1.100 \ # 数据库服务器IP/主机名 -e PMA_PORT=3306 \ # 数据库端口(可选) -p 8080:80 \ arm64v8/phpmyadmin
设置PMA_ARBITRARY=1允许在登录页面输入任意数据库服务器地址:
shdocker run --name phpmyadmin -d \ -e PMA_ARBITRARY=1 \ -p 8080:80 \ arm64v8/phpmyadmin
以下示例通过docker-compose同时部署MariaDB和phpMyAdmin:
yamlversion: '3' services: db: image: arm64v8/mariadb:10.11 restart: always environment: MYSQL_ROOT_PASSWORD: notSecureChangeMe # 数据库root密码 volumes: - db_data:/var/lib/mysql phpmyadmin: image: arm64v8/phpmyadmin restart: always ports: - "8080:80" environment: - PMA_ARBITRARY=1 # 允许连接任意数据库 depends_on: - db volumes: db_data:
执行docker-compose up -d启动服务,访问http://localhost:8080即可。
创建config.user.inc.php文件添加自定义配置(如启用PHP信息显示):
php<?php $cfg['ShowPhpInfo'] = true; // 在首页添加phpinfo()链接
通过-v参数挂载到容器:
shdocker run --name phpmyadmin -d \ --link mysql_db_server:db \ -p 8080:80 \ -v /本地路径/config.user.inc.php:/etc/phpmyadmin/config.user.inc.php \ arm64v8/phpmyadmin
挂载本地conf.d目录到容器/etc/phpmyadmin/conf.d,支持多文件配置:
shdocker run --name phpmyadmin -d \ --link mysql_db_server:db \ -p 8080:80 \ -v /本地路径/conf.d:/etc/phpmyadmin/conf.d:ro \ # ro表示只读 arm64v8/phpmyadmin
可在conf.d目录下创建server-1.php、server-2.php等文件分别配置不同服务器。
部署在反向代理后时,需设置PMA_ABSOLUTE_URI指定完整访问路径:
shdocker run --name phpmyadmin -d \ -e PMA_HOST=db \ -e PMA_ABSOLUTE_URI=[***] \ # 反向代理后的完整URL arm64v8/phpmyadmin
为避免容器重启后会话丢失,挂载/sessions目录:
shdocker run --name phpmyadmin -d \ --link mysql_db_server:db \ -p 8080:80 \ -v /本地路径/sessions:/sessions:rw \ # rw表示读写权限 arm64v8/phpmyadmin
通过PMA_SSL=1启用SSL连接,多服务器可使用PMA_SSLS指定每个服务器是否启用SSL:
sh# 单服务器SSL连接 docker run --name phpmyadmin -d \ -e PMA_HOST=sslhost \ -e PMA_SSL=1 \ -p 8080:80 \ arm64v8/phpmyadmin # 多服务器分别配置SSL docker run --name phpmyadmin -d \ -e PMA_HOSTS=sslhost,nosslhost \ -e PMA_SSLS=1,0 \ # sslhost启用SSL,nosslhost禁用 -p 8080:80 \ arm64v8/phpmyadmin
| 环境变量 | 描述 | 默认值 |
|---|---|---|
PMA_ARBITRARY | 设置为1时允许连接任意数据库服务器 | - |
PMA_HOST | 数据库服务器地址/主机名 | - |
PMA_VERBOSE | 数据库服务器显示名称 | - |
PMA_PORT | 数据库服务器端口 | 3306 |
PMA_HOSTS | 逗号分隔的多数据库服务器地址列表 | - |
PMA_VERBOSES | 逗号分隔的多数据库服务器显示名称列表 | - |
PMA_PORTS | 逗号分隔的多数据库服务器端口列表 | - |
PMA_SSL | 设置为1时启用SSL连接数据库 | 0 |
PMA_SSLS | 逗号分隔的0/1列表,控制多服务器SSL启用状态 | - |
PMA_ABSOLUTE_URI | 反向代理环境下的完整访问URL | - |
PMA_USER/PMA_PASSWORD | 预配置的登录用户名/密码(仅config认证方式) | - |
MAX_EXECUTION_TIME | PHP最大执行时间(秒) | 600 |
MEMORY_LIMIT | PHP内存限制(如1G) | 512M |
UPLOAD_LIMIT | 上传文件大小限制(如10M) | 2048K |
TZ | PHP时区(如Asia/Shanghai) | UTC |
APACHE_PORT | Apache服务端口(仅apache变体) | 80 |
apache(默认变体)fpmfpm-alpinefpm-alpine本镜像包含的软件许可证信息见phpmyadmin/docker仓库。
Docker镜像可能包含基础系统(如Alpine、Debian)及依赖软件,其许可证需另行参考。用户应确保使用本镜像符合所有包含软件的许可证要求。






manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务