轻量级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/

相关推荐
玉&心11 小时前
通过Arthas在线诊断K8S中的内存及JVM等使用情况
docker·k8s·arthas
xing-xing11 小时前
Docker容器中Nginx站点根目录网页配置访问
nginx·docker
2601_9622186111 小时前
万象生鲜系统称重自动多退少补算法解决生鲜非标品痛点
大数据·数据库·人工智能·python·算法
guo_wen_qiang12 小时前
上传本地镜像到harbor中
docker·容器·持续部署
张洛闻Eren12 小时前
k8s云原生【第十课】:水平 Pod 自动扩缩容
运维·数据库·云原生·kubernetes·github
羑悻的小杀马特12 小时前
Dockerfile 全景指南:从入门编写dockerfile到生产环境镜像优化实战,一步步带你从啃透制作指令到镜像制作落地!
docker·dockerfile·镜像制作
于平安12 小时前
MySQL-触发器
数据库·mysql
白远山12 小时前
上海24小时自助健身房解决方案实战指南与经验分享
java·数据库·架构·需求分析
BianHuanShiZhe12 小时前
docker常见命令
docker
Omics Pro12 小时前
斯坦福Nature+Science|广义虚拟细胞基础大模型
数据库·人工智能·算法·机器学习·自然语言处理