通过Docker安装基于web的轻量级数据库管理工具Adminer
通过 Docker 安装 Adminer 是一个非常轻量且高效的选择,它能让你通过浏览器轻松管理 MySQL、MariaDB、PostgreSQL、SQLite 等多种主流数据库。
以下是两种最推荐的安装方式,你可以根据自己的需求选择:
方式一:单行命令一键启动(最快速)
如果你只是想快速体验,或者已经有一个正在运行的 MySQL 容器,可以直接使用 Docker 命令行一键部署:
docker run -d \
--name adminer \
-p 9999:8080 \
--restart unless-stopped \
adminer-d:后台运行容器。--name adminer:给容器起名为 adminer。-p 9999:8080:将宿主机的9999端口映射到容器的8080端口(你可以把 9999 换成任意未被占用的端口)。--restart unless-stopped:设置容器随 Docker 服务自动重启。- 启动成功后,直接在浏览器访问 http://localhost:9999 即可看到 Adminer 的登录界面。
方式二:使用 Docker Compose 部署(推荐)
如果你需要同时拉起 MySQL 和 Adminer,或者希望配置更规范、方便管理,推荐使用 Docker Compose。
- 新建一个文件夹,在里面创建一个名为
docker-compose.yml的文件。 - 将以下内容复制进去:
version: "3"
services:
mysql:
image: mysql:8
container_name: mysql-test
restart: always
environment:
MYSQL_ROOT_PASSWORD: 123456 # 设置你的MySQL root密码
MYSQL_DATABASE: testdb # 默认创建一个名为testdb的数据库
ports:
- "3306:3306"
volumes:
- ./mysql-data:/var/lib/mysql # 数据持久化,防止容器删除后数据丢失
adminer:
image: adminer
container_name: adminer
restart: always
ports:
- "8080:8080"
depends_on:
- mysql # 确保mysql先启动- 在该文件夹下打开终端,执行以下命令启动:
docker compose up -d🚀 如何登录 Adminer 管理 MySQL
打开 Adminer 网页后,按照以下信息进行登录:
- 系统(System):选择
MySQL - 服务器(Server):
- 如果你是方式一(单独部署 Adminer),且 MySQL 也在本地 Docker 运行,这里填你的 本机局域网IP(如
172.17.0.1)或者直接填host.docker.internal。如果 MySQL 是安装在本地非 Docker 环境,直接填localhost。 - 如果你是方式二(Compose 统一部署),直接填配置文件里的服务名
mysql即可。 - 用户名(Username):
root(或你在 MySQL 中创建的其他用户) - 密码(Password):你在 MySQL 配置中设置的密码(如上方示例中的
123456)。
💡 常见问题与避坑指南
- 端口冲突:如果你本地已经安装了 MySQL 或其他服务占用了
3306或8080端口,记得在docker run或docker-compose.yml的ports部分修改映射端口(例如把"3306:3306"改为"3307:3306")。 - Apple Silicon (M1/M2/M3) 芯片:如果你使用的是 Mac 电脑且启动 MySQL 报错,可以在
docker-compose.yml的 mysql 服务下增加一行平台指定:platform: linux/amd64 - 无法连接数据库:如果登录时提示“连接被拒绝”,通常是因为 Adminer 容器无法通过网络访问到 MySQL 容器。使用 Docker Compose 统一部署可以完美避开这个网络问题。