docker部署WhoDB开源轻量级数据库管理工具

WhoDB 部署指南:轻量级数据库管理工具

一、WhoDB 简介

WhoDB 是一个开源的轻量级数据库管理工具,支持多种数据库类型(SQLite、MySQL、PostgreSQL 等)。其特点包括:

  • 轻量高效:资源占用低,启动快速
  • Web 界面:无需安装客户端,浏览器即可访问
  • 跨平台:支持 Docker 一键部署
  • 多数据库支持:可管理不同类型的数据库

步骤 1:创建数据目录和数据库文件

bash 复制代码
# 创建数据目录
mkdir -p /data/whodb

# 创建空的 SQLite 数据库文件(示例)
touch /data/whodb/sample.db

# 设置目录权限(确保容器可读写)
chmod -R 777 /data/whodb

步骤 2:拉取 WhoDB 镜像

bash 复制代码
docker pull clidey/whodb:0.53.0

步骤 3:启动容器

方式一:docker run 命令
bash 复制代码
docker run -d \
  --restart unless-stopped \
  --name whodb \
  -p 8080:8080 \
  -v /data/whodb/sample.db:/db/sample.db \
  clidey/whodb:0.53.0

参数说明:

参数 说明
-d 后台运行容器
--restart unless-stopped 容器退出时自动重启(除非手动停止)
--name whodb 指定容器名称
-p 8080:8080 端口映射,宿主机:容器
-v 挂载数据库文件,持久化存储
方式二:docker-compose 部署(推荐)

创建 docker-compose.yml 文件:

bash 复制代码
sudo tee /data/whodb/docker-compose.yml <<-'EOF'
version: "3.8"

services:
  whodb:
    container_name: whodb
    restart: always
    image: clidey/whodb:0.53.0
    volumes:
      - /data/whodb/sample.db:/db/sample.db
    ports:
      - "8080:8080"
EOF

启动容器:

bash 复制代码
cd /data/whodb
docker-compose up -d

步骤 4:验证部署状态

bash 复制代码
# 查看容器运行状态
docker ps | grep whodb

# 查看容器日志
docker logs whodb

四、访问 WhoDB

部署成功后,通过浏览器访问:

复制代码
http://你的服务器IP:8080

首次访问:

  • 系统会要求配置数据库连接
  • SQLite 数据库已自动挂载,可直接选择 /db/sample.db 进行连接

五、常用管理命令

bash 复制代码
# 停止容器
docker stop whodb

# 启动容器
docker start whodb

# 重启容器
docker restart whodb

# 删除容器(需先停止)
docker rm whodb

# 查看实时日志
docker logs -f whodb

# 进入容器内部
docker exec -it whodb sh

六、高级配置

6.1 修改端口映射

如需使用其他端口(如 80),修改启动命令:

bash 复制代码
docker run -d \
  --restart unless-stopped \
  --name whodb \
  -p 80:8080 \
  -v /data/whodb/sample.db:/db/sample.db \
  clidey/whodb:0.53.0

6.2 挂载多个数据库文件

bash 复制代码
docker run -d \
  --restart unless-stopped \
  --name whodb \
  -p 8080:8080 \
  -v /data/whodb/sample.db:/db/sample.db \
  -v /data/whodb/other.db:/db/other.db \
  clidey/whodb:0.53.0

6.3 配置 MySQL 连接

如需管理 MySQL 数据库,需确保容器网络与 MySQL 服务互通:

bash 复制代码
# 使用 host 网络模式(适用于 MySQL 在宿主机)
docker run -d \
  --restart unless-stopped \
  --name whodb \
  --network host \
  -v /data/whodb/sample.db:/db/sample.db \
  clidey/whodb:0.53.0

访问地址变为:http://你的服务器IP:8080


七、故障排查

问题 1:端口已被占用

bash 复制代码
# 查看端口占用
netstat -tunlp | grep 8080

# 解决方案:更换端口或停止占用进程

问题 2:权限不足

bash 复制代码
# 确保数据目录权限正确
chmod -R 777 /data/whodb

# 检查 SELinux (CentOS/RHEL)
setenforce 0  # 临时关闭

问题 3:容器启动失败

bash 复制代码
# 查看详细错误日志
docker logs whodb --tail 50

八、版本更新

bash 复制代码
# 拉取最新镜像
docker pull clidey/whodb:latest

# 停止并删除旧容器
docker stop whodb
docker rm whodb

# 重新启动
docker run -d \
  --restart unless-stopped \
  --name whodb \
  -p 8080:8080 \
  -v /data/whodb/sample.db:/db/sample.db \
  clidey/whodb:latest

九、卸载清理

如需完全删除 WhoDB:

bash 复制代码
# 停止并删除容器
docker stop whodb
docker rm whodb

# 删除镜像
docker rmi clidey/whodb:0.53.0

# 删除数据目录(谨慎操作)
rm -rf /data/whodb

十、参考资源


部署完成后,您即可通过 Web 界面轻松管理您的数据库,享受轻量级工具带来的便捷体验。

相关推荐
大眼、不聚光3 分钟前
5.mysql--主从同步安装部署
数据库·mysql
Yan_chen66639 分钟前
SQL-LABS_Less18-20实战攻略
数据库·sql·web安全·网络安全
oradh44 分钟前
Oracle RAC OCR维护操作总结
数据库·oracle·ocr·rac ocr维护·ocr维护·vote disk
小义_1 小时前
K8s 全网高频常用命令大全
docker·容器·kubernetes
snow@li1 小时前
HikariCP:高性能数据库连接池全景深入梳理
java·数据库
一个天蝎座的程序猿2 小时前
传统数据库迁金仓KES,空值问题差点让财务报表翻车
数据库
wWYy.2 小时前
Mysql:索引下推
数据库·mysql
TunerT_TQ3 小时前
Valhalla 静态工程审阅 #022|百度PaddlePaddle 源码证据驱动评测【大厂开源基础设施特辑】
人工智能·百度·开源·paddlepaddle·#深度学习·#飞桨
白鲸开源3 小时前
Apache SeaTunnel 提交一个任务都经过了什么?
大数据·开源·github
ApacheSeaTunnel4 小时前
Apache SeaTunnel 提交一个任务都经过了什么?
大数据·开源·数据集成·seatunnel·技术分享·数据同步