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 界面轻松管理您的数据库,享受轻量级工具带来的便捷体验。

相关推荐
欣栀♡2 小时前
Redis 缓存穿透、击穿、雪崩,背出定义只是及格线
数据库·redis·缓存
杨云龙UP2 小时前
PostgreSQL 四种常见部署模式快速理解:单实例、流复制、repmgr、Patroni
linux·运维·数据库·postgresql·流复制·高可用ha
l1t2 小时前
DeepSeek总结的PostgreSQL 19回退会一直继续,直到士气好转
数据库·postgresql
ao-weilai2 小时前
MySQL数据库:C语言连接MySQL教程
c语言·数据库·mysql
miofly2 小时前
GitHub 今日推荐|fsearch:Rust 打造 macOS 毫秒级全盘文件名与内容搜索工具
rust·开源·github
盛世宏博智慧档案2 小时前
档案库房温湿度采集数据存储方案:时序数据库选型与存储优化
数据库·时序数据库
禾小西2 小时前
08丨Redis 哨兵集群:哨兵故障后还能完成切换吗?
数据库·redis·缓存
坐看风云变幻2 小时前
Betaflight 开发环境搭建保姆级教程(Ubuntu / Windows+WSL / Docker 三方案 + 官方网址大全)
windows·ubuntu·docker·无人机·飞控·betaflight
SatanII2 小时前
MySQL 数据库学习总结|理论 + SQL 实训完整笔记
数据库·学习·mysql
oradh2 小时前
Oracle 索引深度解析(从内部原理到实战案例)
数据库·oracle