【Docker项目实战】使用Docker部署WebDB数据库集成开发环境
一、WebDB介绍
1.1 WebDB 简介
WebDB 是一个免费、开源的数据库集成开发环境(IDE),专为提升数据库开发与管理效率而设计。它集成了数据浏览、SQL 编辑、结构设计、数据生成等多功能于一体,支持多种数据库系统。基于 Node.js、Docker 和 Angular 构建,提供现代化、响应迅速的操作体验。无论是数据库初学者还是专业开发人员,WebDB 都能显著简化日常数据库操作流程。
1.2 WebDB主要特点
- DBMS 发现与资格猜测:自动扫描本地网络,发现附近的数据库管理系统并尝试连接。
- 智能查询编辑器:基于 Monaco 编辑器,支持语法高亮、自动补全和内联文档提示。
- 时光机器:提供长达 200 版本的变更历史,可随时回滚数据库的任意修改。
- NoSQL 结构推断:自动分析文档型数据库的结构,并推断集合之间的关联关系。
- 现代ERD工具:通过直观的实体关系图(ERD)可视化数据库模式结构。
- 智能数据生成器:自动识别外键和枚举字段,集成 FakerJS 与 Falso 生成逼真测试数据。
二、本次实践规划
2.1 本地环境规划
本次实践为个人测试环境,操作系统版本为 Ubuntu 24.04.2 LTS。
hostname | IP地址 | 操作系统版本 | Docker版本 | 部署项目 |
---|---|---|---|---|
jeven01 | 192.168.3.88 | Ubuntu 24.04.2 LTS | 28.3.3 | WebDB |
2.2 本次实践介绍
1.本次实践部署环境为个人测试环境,生产环境请谨慎;
2.在Docker环境下部署WebDB数据库集成开发环境。
三、本地环境检查
3.1 检查Docker服务状态
检查Docker服务是否正常运行,确保Docker正常运行。
root@jeven:~# systemctl status docker
● docker.service - Docker Application Container Engine
Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; preset: enabled)
Active: active (running) since Tue 2025-09-02 11:41:03 UTC; 27s ago
TriggeredBy: ● docker.socket
Docs: https://docs.docker.com
Main PID: 782009 (dockerd)
Tasks: 19
Memory: 96.5M (peak: 105.5M)
CPU: 1.750s
CGroup: /system.slice/docker.service
└─782009 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
3.2 检查Docker版本
检查Docker版本
root@jeven:~# docker -v
Docker version 28.3.3, build 980b856
3.3 检查docker compose 版本
检查Docker compose版本,确保2.0以上版本。
root@jeven:~# docker -v
Docker version 28.3.3, build 980b856
四、拉取WebDB镜像
下载WebDB容器镜像,如下所示:
docker pull webdb/app:2025.06.10
五、部署WebDB服务
5.1 创建部署目录
- 创建部署目录
mkdir -p /data/webdb/{data,ssh} && cd /data/webdb
5.2 编辑部署文件
如果使用docker-cli方式部署,则可参考以下命令:
docker run -d \
--restart unless-stopped \
--name webdb \
-p 22071:22071 \
-v /data/webdb/data:/usr/src/app/static/version \
-v /data/webdb/ssh:/root/.ssh \
webdb/app:2025.06.10
在部署目录下,创建docker-compose.yaml文件,内容如下所示:
vim docker-compose.yaml
version: '3.9'
services:
app:
image: 'webdb/app:2025.06.10'
volumes:
- '/data/webdb/ssh:/root/.ssh'
- '/data/webdb/data:/usr/src/app/static/version'
ports:
- '22071:22071'
container_name: webdb
restart: unless-stopped
5.3 创建WebDB容器
执行以下命令,创建WebDB容器。
docker compose up -d
5.4 查看WebDB容器状态
检查WebDB容器运行状态,确保WebDB容器正常启动。
root@jeven:/data/webdb# docker compose ps
WARN[0000] /data/webdb/docker-compose.yaml: the attribute `version` is obsolete, it will be ignored, please remove it to avoid potential confusion
NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS
webdb webdb/app:2025.06.10 "node src/index.js" app 2 minutes ago Up 2 minutes 0.0.0.0:22071->22071/tcp, [::]:22071->22071/tcp
5.5 检查WebDB容器日志
检查容器运行日志,确保WebDB服务正常运行。
docker compose logs
六、访问WebDB服务
浏览器地址:
http://<个人的服务器IP>:22071
,访问WebDB首页。如果无法访问,请确保宿主机的防火墙已关闭或已放行相关端口,对于云服务器还需配置相应的安全组规则。
七、WebDB基本使用
7.1 添加数据库
点击首页右上角的“Add”选项,进入添加数据库页面。
这里我们选择数据库类型为MySQL
我们填写完数据库信息后,点击测试后,再点击“Save”保存即可。
7.2 查看数据库信息
数据库连接成功后,在WebDB首页如下所示:
- 查看数据表内容:
八、总结
通过本次实践,我们基于Docker容器化技术成功部署了WebDB数据库集成开发环境,实现了服务的快速搭建与环境的一致性保障。借助Docker Compose的编排能力,整个部署流程标准化、自动化,显著提升了开发环境的搭建效率与可维护性。WebDB提供的可视化管理界面,有效简化了多类型数据库的连接、浏览与操作,为开发调试提供了极大便利。该方案具备良好的可扩展性,为进一步构建本地微服务开发测试环境奠定了坚实基础。
- 点赞
- 收藏
- 关注作者
评论(0)