轻量级SQLite可视化工具Sqliteviz

什么是 Sqliteviz ?

Sqliteviz 是一个单页面离线优先的渐进式网络应用(PWA),用于完全客户端的 SQLite 数据库或 CSV 文件的可视化。

所谓完全客户端,就是您的数据库永远不会离开您的计算机。使用 sqliteviz,您可以:

  • SQLite 数据库运行 SQL 查询,并基于结果集创建 Plotly 图表和数据透视表 ;
  • CSV 文件导入 SQLite 数据库,并可视化导入的数据;
  • 将结果集导出为 CSV 文件;
  • 管理查询并对不同的数据库运行它们;
  • 从/到 JSON 文件导入/导出查询;
  • 导出修改后的 SQLite 数据库;
  • 您可以在离线状态下从操作系统应用菜单中使用它,就像使用任何其他桌面应用程序一样;

Sqliteviz 功能演示

构建镜像

如果你不想自己构建,可以跳过,直接阅读下一章节

官方提供了本地测试的 Dockerfile,但其使用的基础镜像比较老,也未使用分层构建,所以老苏做了些许调整👇

dockerfile 复制代码
# An easy way to run tests locally without Nodejs installed:      
#      
#     docker build -t sqliteviz/test -f Dockerfile.test .      
#      
      
FROM node:16.16 as build-base   
    
RUN set -ex; \    
    apt update; \    
    apt install -y chromium firefox-esr; \    
    npm install -g npm@7    
    
WORKDIR /tmp/build    
    
COPY package.json package-lock.json ./    
COPY lib lib      
RUN npm install      
    
COPY . .    
    
RUN set -ex; \    
    sed -i 's/browsers: \[.*\],/browsers: ['"'FirefoxHeadlessTouch'"'],/' karma.conf.js    
    
#RUN npm run lint -- --no-fix && npm run test  
RUN npx browserslist@latest --update-db && \  
    npm run build  
  
FROM nginx:1.12-alpine  
COPY --from=build-base /tmp/build/dist /usr/share/nginx/html  
  
EXPOSE 80  
  
CMD ["nginx", "-g", "daemon off;"]

构建镜像和容器运行的基本命令如下👇

bash 复制代码
# 下载代码
git clone https://github.com/lana-k/sqliteviz.git

# 进入目录  
cd sqliteviz

# 构建镜像
docker build -t wbsu2003/sqliteviz:v1 -f Dockerfile.test .

# 运行容器
docker run -d \
   --name sqliteviz \
   -p 3366:80 \
   wbsu2003/sqliteviz:v1

安装

在群晖上以 Docker 方式安装。

在注册表中搜索 sqliteviz ,选择第一个 wbsu2003/sqliteviz,版本选择 latest

端口

本地端口不冲突就行,不确定的话可以用命令查一下

bash 复制代码
# 查看端口占用
netstat -tunlp | grep 端口号
本地端口 容器端口
3366 80

命令行安装

如果你熟悉命令行,可能用 docker cli 更快捷

bash 复制代码
# 运行容器
docker run -d \
   --name sqliteviz \
   -p 3366:80 \
   wbsu2003/sqliteviz

也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件

yaml 复制代码
version: '3'

services:
  sqliteviz:
    image: wbsu2003/sqliteviz
    container_name: sqliteviz
    restart: unless-stopped
    ports:
      - 3366:80

然后执行下面的命令

bash 复制代码
# 新建文件夹 sqliteviz
mkdir -p /volume1/docker/sqliteviz

# 进入 sqliteviz 目录
cd /volume1/docker/sqliteviz

# 将 docker-compose.yml 放入当前目录

# 一键启动
docker-compose up -d

运行

在浏览器中输入 http://群晖IP:3366 就能看到主界面

  • ①可以上传或者拖入一个已有的数据库文件;
  • ②可以创建一个空的数据库;

老苏用来测试的还是 homebox 的数据库

点右上角的 Create 按钮创建查询,输入 SQL 语句会有提示

运行 SQL 查询

详细的使用方法,请参考官方文档:https://sqliteviz.com/docs/basic-usage

参考文档

lana-k/sqliteviz: Instant offline SQL-powered data visualisation in your browser

地址:https://github.com/lana-k/sqliteviz
Home - sqliteviz

地址:https://sqliteviz.com/
Introduction - sqliteviz

地址:https://sqliteviz.com/docs/

相关推荐
疯狂的大狗14 分钟前
docker进入正在运行的容器,exit后的比较
运维·docker·容器
看山还是山,看水还是。15 分钟前
MySQL 管理
数据库·笔记·mysql·adb
fishmemory7sec22 分钟前
Koa2项目实战2(路由管理、项目结构优化)
数据库·mongodb·koa
长天一色29 分钟前
【Docker从入门到进阶】01.介绍 & 02.基础使用
运维·docker·容器
伊玛目的门徒29 分钟前
docker 搭建minimalist-web-notepad
运维·docker·notepad
momo小菜pa32 分钟前
【MySQL 09】表的内外连接
数据库·mysql
Jasonakeke40 分钟前
【重学 MySQL】四十九、阿里 MySQL 命名规范及 MySQL8 DDL 的原子化
数据库·mysql
程序猿小D42 分钟前
第二百六十九节 JPA教程 - JPA查询OrderBy两个属性示例
java·开发语言·数据库·windows·jpa
小宇成长录1 小时前
Mysql:数据库和表增删查改基本语句
数据库·mysql·数据库备份
团儿.2 小时前
解锁MySQL高可用新境界:深入探索MHA架构的无限魅力与实战部署
数据库·mysql·架构·mysql之mha架构