ITPub博客

首页 > 数据库 > 数据库开发技术 > 数据库工具 | 使用Docker部署SQLite管理工具Rust SQLite WebUI详细教程

数据库工具 | 使用Docker部署SQLite管理工具Rust SQLite WebUI详细教程

原创 数据库开发技术 作者:江湖有缘 时间:2026-10-19 11:32:52 0 删除 编辑

一、Rust SQLite WebUI介绍

1.1 Rust SQLite WebUI简介

Rust SQLite WebUI 是一款基于 Rust(Axum)和 Solid.js 构建的极简轻量级 SQLite Web 管理工具,通过浏览器即可对 SQLite 数据库进行可视化管理,Docker 镜像仅约 10MB、运行时内存占用仅约 1MB,同时内置 AI 智能助手,支持自然语言转 SQL 和 SQL 自动纠错,非常适合小型 VPS、边缘设备及资源受限环境下的数据库日常管理。

1.2 Rust SQLite WebUI主要特点

  • 镜像轻量:Docker 镜像前后端合计仅约 10MB,适合小型 VPS 和边缘设备部署。
  • 高性能低占用:运行时内存占用仅约 1MB,查询响应可达亚毫秒级别。
  • AI 智能助手:支持自然语言转 SQL 和错误 SQL 自动纠正,兼容 OpenAI 及 DeepSeek 协议。
  • 现代技术栈:后端采用 Rust + Axum + SQLx + Tokio,前端采用 Solid.js + Vite + TailwindCSS + DaisyUI。
  • Web 可视化管理:通过浏览器即可浏览表结构、执行 SQL 查询、查看数据,无需安装桌面客户端。
  • 自动扫描数据库:支持自动扫描指定目录下的 SQLite 数据库文件,开箱即用。
  • 前端精简:前端打包静态文件不到 100KB,压缩后不到 30KB,页面加载速度极快。
  • Docker 一键部署:提供 Docker 镜像,一条命令即可启动服务,零配置上手。

二、本次实践规划

2.1 本地环境规划

本次实践为个人测试环境,操作系统版本为 Ubuntu 24.04.2 LTS。

hostname IP地址 操作系统版本 Docker版本 部署项目 备注
jeven 192.168.3.88 Ubuntu 24.04.2 LTS 28.5.0 Rust SQLite WebUI ——

2.2 本次实践介绍

1.本次实践部署环境为个人测试环境,生产环境请谨慎;
2.在Docker环境下安装SQLite管理工具Rust SQLite WebUI。

三、本地环境检查

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 Sun 2026-05-31 23:17:28 CST; 1 month 29 days ago
TriggeredBy: ● docker.socket
       Docs: https://docs.docker.com
   Main PID: 945 (dockerd)
      Tasks: 117
     Memory: 787.7M (peak: 1018.4M swap: 11.8M swap peak: 12.6M)
        CPU: 58min 1.415s
     CGroup: /system.slice/docker.service

在这里插入图片描述

3.2 检查Docker版本

检查Docker版本

root@jeven:~# docker -vDocker version 28.5.0, build 887030f

3.3 检查docker compose 版本

检查Docker compose版本,确保2.0以上版本。

root@jeven:~# docker compose versionDocker Compose version v2.39.4

四、拉取SQLite管理工具Rust SQLite WebUI镜像

  • 下载rust-sqlite-webui镜像,使用的镜像为 wangyucode/rust-sqlite-webui:latest。
  • Github地址:https://github.com/wangyucode/rust-sqlite-webui
root@jeven:~# docker pull wangyucode/rust-sqlite-webui:latest
latest: Pulling from wangyucode/rust-sqlite-webui
Digest: sha256:16417ae974d0968792813cd65b7e32a250e91eeeb35f22a47298fb2f0f8042b2
Status: Image is up to date for wangyucode/rust-sqlite-webui:latest
docker.io/wangyucode/rust-sqlite-webui:latest

在这里插入图片描述

五、部署Rust SQLite WebUI服务

5.1 创建部署目录

  • 创建部署目录
mkdir -p /data/rust-sqlite-webui  && cd /data/rust-sqlite-webui
  • 测试环境下,我们设置完全权限,生产环境请谨慎。
chmod -R 777 /data/rust-sqlite-webui/

5.2 docker-cli方式部署(可选)

如果想要使用docker-cli方式部署,可参考以下命令部署。(可选)

docker run -d \
  -p 3000:3000 \
  -v sqlite.db:/app/db/sqlite.db \
  -e API_KEY=your_secret_key \
  --name sqlite-webui \
  wangyucode/rust-sqlite-webui

5.3 创建rust-sqlite-webui容器

本次实践我们采用 Docker Compose 方式进行部署,这也是我推荐的方式。首先我们需要创建并编辑 docker-compose.yaml 文件,请注意宿主机映射端口可根据您的实际情况自行设置,务必避免端口冲突。

vim docker-compose.yaml
services:
  sqlite-webui:
    image: wangyucode/rust-sqlite-webui    container_name: sqlite-webui    ports:
      - "3000:3000"
    volumes:
      - ./data:/app/db    environment:
      - API_KEY=your_secret_key    restart: unless-stopped

执行以下命令,创建rust-sqlite-webui容器。

docker compose up -d

在这里插入图片描述

5.4 查看rust-sqlite-webui容器状态

检查Nrust-sqlite-webui容器运行状态,确保rust-sqlite-webui容器正常启动。

root@jeven:/data/rust-sqlite-webui# docker compose psNAME           IMAGE                          COMMAND                 SERVICE        CREATED          STATUS          PORTS
sqlite-webui   wangyucode/rust-sqlite-webui   "./rust-sqlite-webui"   sqlite-webui   34 seconds ago   Up 34seconds   0.0.0.0:3000->3000/tcp, [::]:3000->3000/tcp

在这里插入图片描述

5.5 检查rust-sqlite-webui容器日志

检查容器运行日志,确保rust-sqlite-webui容器服务正常运行。

docker compose logs

在这里插入图片描述

六、访问Rust SQLite WebUI服务

浏览器地址: http://<个人的服务器IP>:3000,访问Rust SQLite WebUI初始页。如果无法访问,请确保宿主机的防火墙已关闭或已放行相关端口,对于云服务器还需配置相应的安全组规则。

在这里插入图片描述

输入我们设置的 API_KEY=your_secret_key后,需要openai的API key,没有可忽略。

在这里插入图片描述

输入sqlite文件的名称后,我们进入Rust SQLite WebUI首页。

在这里插入图片描述

七、基本使用

我们创建测试数据,执行以下操作。

  • 创建学生表
CREATE TABLE IF NOT EXISTS students (
    id INTEGER PRIMARY KEY AUTOINCREMENT,
    name TEXT NOT NULL,
    gender TEXT,
    class TEXT);
  • 创建成绩表
CREATE TABLE IF NOT EXISTS scores (
    id INTEGER PRIMARY KEY AUTOINCREMENT,
    student_id INTEGER NOT NULL,
    subject TEXT NOT NULL,
    score REAL NOT NULL,
    FOREIGN KEY (student_id) REFERENCES students(id));

在这里插入图片描述

  • 插入学生数据
INSERT INTO students (name, gender, class) VALUES ('张三', '男', '高一(1)班');INSERT INTO students (name, gender, class) VALUES ('李四', '女', '高一(1)班');INSERT INTO students (name, gender, class) VALUES ('王五', '男', '高一(2)班');INSERT INTO students (name, gender, class) VALUES ('赵六', '女', '高一(2)班');

在这里插入图片描述

  • 插入成绩数据
INSERT INTO scores (student_id, subject, score) VALUES (1, '数学', 95);INSERT INTO scores (student_id, subject, score) VALUES (1, '英语', 88);INSERT INTO scores (student_id, subject, score) VALUES (2, '数学', 72);INSERT INTO scores (student_id, subject, score) VALUES (2, '英语', 90);INSERT INTO scores (student_id, subject, score) VALUES (3, '数学', 100);INSERT INTO scores (student_id, subject, score) VALUES (4, '英语', 85);

在这里插入图片描述

八、总结

通过本次实践,我们成功在 Docker 环境中部署了轻量级的 Rust SQLite WebUI 管理工具,完整经历了从环境检查、镜像拉取到服务启动的全流程。借助 Docker Compose 的编排能力,我们实现了服务的快速部署与持久化存储,有效降低了运维复杂度。通过浏览器访问和 SQL 测试,验证了该工具在数据库可视化管理、SQL 执行等方面的核心功能,其极简的界面和 AI 辅助能力为日常数据库操作提供了便利。整个部署过程清晰高效,充分体现了 Docker 在自托管轻量级应用中的便捷性,适合推荐给需要管理 SQLite 数据库的用户参考实践。


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70051046/viewspace-3185979/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: 没有了~
请登录后发表评论 登录
全部评论
江湖有缘,深耕企业基础架构运维与云计算十余年,全网粉丝超 20 万,文章阅读量近千万。持有华为 HCIE 云计算等多项权威认证。CSDN、51CTO、阿里云、华为云专家博主,腾讯云 2024‑2025 年度创作之星、影响力作者。专注沉淀企业运维实战,分享云计算技术,传递技术价值,赋能广大 IT 从业者。

注册时间:2026-08-11

  • 博文量
    28
  • 访问量
    28197