ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

Chat2DB 部署与安装指南:安装包、Docker 与源码构建三条路线一次跑通

Chat2DB 部署与安装指南:安装包、Docker 与源码构建三条路线一次跑通 Chat2DB 部署与安装指南安装包、Docker 与源码构建三条路线一次跑通【免费下载链接】Chat2DBChat2DB is a free, cross-platform, local-first database client and SQL workspace for developers, DBAs, analysts, and data teams. Connect to 40 databases, manage data, edit and run SQL, and use your own AI model to generate, explain, and optimize queries. Available on desktop, web, Docker, and CLI, with MCP support.项目地址: https://gitcode.com/GitHub_Trending/ch/Chat2DBChat2DB 是一个跨平台、本地优先的数据库客户端和 SQL 工作区支持连接 40 多种数据库包括 MySQL、PostgreSQL、Oracle、Redis、MongoDB并能接入你自己的 AI 模型来生成、解释和优化 SQL。本文覆盖三条部署路线官方安装包、Docker 容器和源码构建。按步骤操作你可以在本机或服务器上把 Chat2DB 跑起来并完成第一个数据库连接。先做选型三条路线的差异动手之前先判断哪条路线适合你。三条路线都来自同一份代码功能一致差别在操作成本和可定制性。部署路线上手时间适合人群可定制性官方安装包几分钟装完即用个人开发者、DBA 日常使用低Docker 容器约 10 分钟含密钥初始化团队共用、服务器部署中源码构建30 分钟起前后端分别构建二次开发、参与贡献、深度定制高Chat2DB 是单用户、本地优先的应用没有多用户账号体系。无论选哪条路线都建议把 HTTP 服务保持在127.0.0.1不要直接暴露到公网。完整的信任边界说明见 SECURITY.md。路线一安装官方安装包安装包是最省事的方式。从项目发布页下载对应平台的安装包安装后直接启动不需要额外配置。各平台的差异如下平台安装包形态说明Windows安装程序双击安装按向导完成即可macOSDMG 镜像拖入 Applications 后启动Linuxdeb / rpm / AppImage仓库中 script/package/ 下的打包脚本通过 jpackage 生成这三类产物几点提醒首次启动后在设置里配置数据库连接信息。需要 AI 功能时在设置中填入你自己的模型 API KeyKey 会本地加密存储。Linux 下如果是解压式的 AppImage需要给它加执行权限chmod x Chat2DB-Community-*.AppImage路线二用 Docker 运行 Chat2DB 社区版容器方式适合部署在服务器上、通过浏览器访问。仓库自带的 Compose 定义在 docker/docker-compose.yml镜像基于eclipse-temurin:17-jre服务端口固定为10825见 docker/Dockerfile。环境要求Docker 19.03.0 以上Docker Compose 2.0.0 以上仅 Compose 方式需要2 核以上 CPU4 GiB 以上内存。先初始化加密密钥再拉取并启动容器Chat2DB 社区版用 AES-256-GCM 加密存储的数据库密码和 AI 模型 API Key密钥是每个安装实例独立的。Web 和容器模式不会自动创建密钥必须先初始化否则启动会直接失败。初始化脚本需要openssl执行一次即可重复运行会复用已有的有效密钥git clone https://gitcode.com/GitHub_Trending/ch/Chat2DB cd Chat2DB ./script/security/init-community-encryption-key.sh密钥写到~/.config/chat2db-community/encryption.key。请单独备份这个文件并保证它在容器重建和镜像升级后仍然存在。密钥一旦更换或丢失之前存储的数据库密码和 API Key 将无法读取。然后启动容器这条命令把服务绑定到本机回环地址挂载数据卷和密钥文件并开启异常退出自动重启docker run --detach \ --name chat2db-community \ --restart unless-stopped \ --publish 127.0.0.1:10825:10825 \ --volume $HOME/.chat2db-community-docker:/root/.chat2db-community \ --env CHAT2DB_COMMUNITY_ENCRYPTION_KEY_FILE/run/secrets/chat2db-community-encryption.key \ --volume $HOME/.config/chat2db-community/encryption.key:/run/secrets/chat2db-community-encryption.key:ro \ chat2db/chat2db:latest启动后打开http://localhost:10825看到登录或主界面即部署成功。用 Compose 定义启动如果你更喜欢声明式管理可以用仓库自带的 Compose 文件。它会使用名为chat2db-community-data的命名卷挂载到容器内/root/.chat2db-community密钥文件以只读方式挂载docker compose --file docker/docker-compose.yml up --detach注意两种方式的数据目录不共享docker run示例写的是$HOME/.chat2db-community-dockerCompose 用的是命名卷。迁移时数据不会自动带过去。另外5.3.0 起容器改用独立的/root/.chat2db-community数据目录不会自动迁移旧镜像中/root/.chat2db里的数据升级前请先备份旧目录。日常运维命令# 查看运行日志 docker logs -f chat2db-community # 查看容器状态 docker ps --filter namechat2db-community # 停止并移除容器数据卷和密钥文件保留 docker stop chat2db-community docker rm chat2db-community镜像升级的步骤拉取新镜像移除旧容器用同样的参数重新运行。密钥文件保持不变数据就能继续用。路线三从源码构建 Chat2DB 社区版源码构建分前后端两部分。前端是 React 应用后端是 Spring Boot 服务开发模式下前端跑在 8889 端口最终 Web 服务统一走 10825 端口。环境自检清单在 package.json 和 README 中确认过的版本要求如下先用检查命令确认本机环境工具版本要求检查命令JavaEclipse Temurin 1717java -versionNode.js18.17.0 及以上node --versionMaven3.8 及以上mvn --versionopenssl任意可用版本openssl versionGit任意可用版本git --version克隆仓库并启动前端克隆后进入前端目录。项目使用 Yarn 管理依赖必须用yarn install --frozen-lockfile按锁文件安装不要用 npmgit clone https://gitcode.com/GitHub_Trending/ch/Chat2DB cd Chat2DB/chat2db-community-client yarn install --frozen-lockfile然后启动开发模式。这个命令在127.0.0.1:8889起前端 dev serveryarn run start:community:hot浏览器打开http://127.0.0.1:8889能加载出界面说明前端构建链路正常。构建后端并启动完整服务回到仓库根目录Maven 这条命令只构建启动模块及其依赖跳过测试产物是chat2db-community.jar加一个lib依赖目录cd Chat2DB mvn -B clean package -Dmaven.test.skiptrue -Dchat2db.finalNamechat2db-community \ -f chat2db-community-server/pom.xml \ -pl chat2db-community-start -am构建完成后初始化密钥前面跑过的话会直接复用再用下面的命令启动 Web 模式服务。命令显式指定了密钥文件路径、绑定地址和端口./script/security/init-community-encryption-key.sh java -Dloader.pathchat2db-community-server/chat2db-community-start/target/lib \ -Dchat2db.guifalse \ -Dchat2db.runtime.modecommunity \ -Dchat2db.modeWEB \ -Dchat2db.network.statusOFFLINE \ -Dchat2db.community.encryption-key-file$HOME/.config/chat2db-community/encryption.key \ -Dserver.address127.0.0.1 \ -Dserver.port10825 \ -Dspring.profiles.activedev \ -jar chat2db-community-server/chat2db-community-start/target/chat2db-community.jar验证是否跑通打开http://127.0.0.1:10825能进入界面即成功。也可以先确认端口监听状态ss -tlnp | grep 10825看到127.0.0.1:10825处于 LISTEN 状态服务就起来了。之后添加一个数据库连接执行一条SELECT 1跑通查询链路就算完整验收。生产加固要点保持服务绑定127.0.0.1确需远程访问时加一层反向代理并启用认证不要裸奔到内网。单独备份~/.config/chat2db-community/encryption.key它和数据库连接配置同等重要。容器模式保留--restart unless-stopped保证进程异常退出后自动拉起。数据目录$HOME/.chat2db-community-docker或命名卷纳入定期备份升级镜像前先停容器再备份。密钥文件的配置解析顺序是JVM 属性chat2db.community.encryption-key、环境变量CHAT2DB_COMMUNITY_ENCRYPTION_KEY、JVM 属性chat2db.community.encryption-key-file、环境变量CHAT2DB_COMMUNITY_ENCRYPTION_KEY_FILE最后回落到默认路径。推荐用文件方式配置避免密钥出现在进程参数里。问题速查现象可能原因解决办法启动即退出日志提示密钥无效或缺失Web/容器模式不会自动创建密钥运行./script/security/init-community-encryption-key.sh后重启10825 端口启动失败端口被其他进程占用ss -tlnp \| grep 10825找到占用进程或改-Dserver.port与发布映射容器起来了但页面打不开容器内服务还没就绪或已退出docker logs chat2db-community看错误重点核对密钥挂载路径镜像升级后旧连接不见了5.3.0 起改用/root/.chat2db-community不自动迁移旧数据备份并手工迁移旧/root/.chat2db内容或重新录入连接yarn install报依赖漂移用了 npm 或没走锁文件用yarn install --frozen-lockfile安装页面能开但数据库连不上网络代理或防火墙拦截出站连接检查目标库端口连通性nc -zv 主机 端口小结三条路线的选择很直接日常使用选官方安装包团队共享选 Docker要做二次开发再走源码构建。部署完成后的第一件事是备份加密密钥文件它决定了所有已存密码和 API Key 是否还能读取。更多细节可以查阅仓库内的 CONTRIBUTING.md 和 docs/guides/bigquery.md社区问题可以通过邮件 Chat2DBch2db.com 反馈。【免费下载链接】Chat2DBChat2DB is a free, cross-platform, local-first database client and SQL workspace for developers, DBAs, analysts, and data teams. Connect to 40 databases, manage data, edit and run SQL, and use your own AI model to generate, explain, and optimize queries. Available on desktop, web, Docker, and CLI, with MCP support.项目地址: https://gitcode.com/GitHub_Trending/ch/Chat2DB创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表