ToolJet 版本选型指南:LTS、Pre-Release 与 Past Versions 的抉择与部署实践
【免费下载链接】ToolJetOpen-source foundation of ToolJet AI - the enterprise app generation platform for internal tools, dashboards, business applications, workflows and AI agents. Build visually, from a prompt, or from Claude Code, Codex and Cursor over MCP 🚀项目地址: https://gitcode.com/GitHub_Trending/to/ToolJet
ToolJet 将发行版本划分为LTS(长期支持)、Pre-Release(预发布)与Past Versions(已停止维护的历史版本)三大类,本文将以 choose-your-tooljet.md 为骨架,结合仓库内 Docker 部署清单、Dockerfile 与升级文档,说明每一类版本的特征、适用场景与取舍逻辑,并给出拉取镜像、快速体验与平滑升级的具体操作,帮助你为自己的环境选择正确的版本轨道。
版本分类总览:三条轨道,三种用途
ToolJet 的版本策略可以概括为一条简单的主线:追求稳定选 LTS,尝鲜新特性选 Pre-Release,遗留系统尽快脱离 Past Versions。三者关系如下表:
| 版本类别 | 定位 | 稳定性 | 适用场景 | 维护状态 |
|---|---|---|---|---|
| Long-Term Support (LTS) | 生产环境首选 | 高,优先修复缺陷、持续更新 | 生产环境、对稳定性与持续性能有要求 | 长期维护 |
| Pre-Release | 探索最新能力 | 低,实验性质、可能含缺陷 | 功能验证、开发预览 | 活跃迭代 |
| Past Versions | 历史遗留 | 无保障 | 不推荐,尤其不用于生产 | 已停止维护,无更新、无安全补丁 |
Long-Term Support (LTS):生产环境的推荐之选
为什么官方强烈推荐 LTS
官方文档明确建议大多数用户选择 LTS 版本,因为 LTS 轨道在缺陷修复、功能更新与整体稳定性上享有最高优先级,能保证可靠的运行体验,是生产环境中对稳定性和一致性性能有硬性要求时的默认答案。
LTS 版本从哪里查
LTS 镜像发布在 Docker Hub 的tooljet/tooljet仓库下,可通过 Docker Hub - LTS Versions 查询,其镜像标签遵循ee-lts系列命名。文档中给出的 EE-LTS 版本发布记录(部分)如下:
| Version | Release Date | Docker Pull Command |
|---|---|---|
| Latest EE-LTS | N/A | docker pull tooljet/tooljet:ee-lts-latest |
| v3.5.0-ee-lts | February 12, 2025 | docker pull tooljet/tooljet:v3.5.0-ee-lts |
| v3.0.24-ee-lts | January 3, 2025 | docker pull tooljet/tooljet:v3.0.24-ee-lts |
| v3.0.23-ee-lts | January 2, 2025 | docker pull tooljet/tooljet:v3.0.23-ee-lts |
| v3.0.22-ee-lts | December 30, 2024 | docker pull tooljet/tooljet:v3.0.22-ee-lts |
| v3.0.21-ee-lts | December 20, 2024 | docker pull tooljet/tooljet:v3.0.21-ee-lts |
| v3.0.20-ee-lts | December 20, 2024 | docker pull tooljet/tooljet:v3.0.20-ee-lts |
| v3.0.19-ee-lts | December 17, 2024 | docker pull tooljet/tooljet:v3.0.19-ee-lts |
| v3.0.18-ee-lts | December 12, 2024 | docker pull tooljet/tooljet:v3.0.18-ee-lts |
| v3.0.17-ee-lts | December 9, 2024 | docker pull tooljet/tooljet:v3.0.17-ee-lts |
| v3.0.16-ee-lts | December 9, 2024 | docker pull tooljet/tooljet:v3.0.16-ee-lts |
| v3.0.15-ee-lts | December 5, 2024 | docker pull tooljet/tooljet:v3.0.15-ee-lts |
| v3.0.14-ee-lts | December 3, 2024 | docker pull tooljet/tooljet:v3.0.14-ee-lts |
| v3.0.13-ee-lts | December 2, 2024 | docker pull tooljet/tooljet:v3.0.13-ee-lts |
| v3.0.12-ee-lts | November 29, 2024 | docker pull tooljet/tooljet:v3.0.12-ee-lts |
| v3.0.11-ee-lts | November 29, 2024 | docker pull tooljet/tooljet:v3.0.11-ee-lts |
| v3.0.10-ee-lts | November 28, 2024 | docker pull tooljet/tooljet:v3.0.10-ee-lts |
| v3.0.9-ee-lts | November 27, 2024 | docker pull tooljet/tooljet:v3.0.9-ee-lts |
| v3.0.8-ee-lts | November 27, 2024 | docker pull tooljet/tooljet:v3.0.8-ee-lts |
| v3.0.7-ee-lts | November 26, 2024 | docker pull tooljet/tooljet:v3.0.7-ee-lts |
| v3.0.6-ee-lts | November 26, 2024 | docker pull tooljet/tooljet:v3.0.6-ee-lts |
| v3.0.5-ee-lts | November 25, 2024 | docker pull tooljet/tooljet:v3.0.5-ee-lts |
| v3.0.4-ee-lts | November 20, 2024 | docker pull tooljet/tooljet:v3.0.4-ee-lts |
| v3.0.3-ee-lts | November 18, 2024 | docker pull tooljet/tooljet:v3.0.3-ee-lts |
| v3.0.2-ee-lts | November 13, 2024 | docker pull tooljet/tooljet:v3.0.2-ee-lts |
| v3.0.1-ee-lts | November 12, 2024 | docker pull tooljet/tooljet:v3.0.1-ee-lts |
| v3.0.0-ee-lts | November 12, 2024 | docker pull tooljet/tooljet:v3.0.0-ee-lts |
注意:上表为文档发布时的记录快照,具体可用版本请以 Docker Hub 实时标签为准。
关于 AI 能力的版本说明
自v3.5.0-ee-lts起,所有 ToolJet 发布均为 AI 版本,相关的 AI 构建能力可在 Build with AI 概览(文档中对应的/docs/build-with-ai/overview页面)中查看。这一点也与仓库中 LTS 镜像的构建事实相互印证:在 ee-try-tooljet-lts.Dockerfile 中可以看到ENABLE_AI_FEATURES=true作为默认环境变量被注入,同时在 ee-production.Dockerfile 的镜像内还预置了/app/server/ee/ai/assets等 AI 相关资源,说明 AI 能力已成为 LTS 发行版的默认组成部分。
升级建议
官方鼓励用户升级到最新的 LTS 版本,以持续获得改进成果,并维持安全、高效的环境。升级节奏方面,upgrade-to-lts.md 与 docker.md 均明确:新的 LTS 版本大约每 3~5 个月发布一次,生命周期(end-of-life)至少 18 个月。这意味着选择 LTS 轨道后,你有充足的时间窗口规划升级。
Pre-Release:面向尝鲜者的实验版本
Pre-Release 版本面向希望第一时间体验 ToolJet 最新功能与进展的用户。这类版本可能包含 LTS 中尚未提供的新能力,但因其实验性质,也可能包含缺陷、缺少 LTS 的稳定性,因此官方明确建议不要在生产环境使用 Pre-Release 版本。
判定标准很简单:从 3.1.x.x 开始的版本一律视为 Pre-Release 版本。换句话说,3.1 及以上(例如 3.1.x、3.2.x 等四位版本号)均属于预发布轨道,只有 3.0.x-ee-lts 与 3.5.x-ee-lts 这类带-ee-lts后缀的标签才属于 LTS 轨道。版本号带不带-ee-lts后缀、以及版本号落在哪个区间,是你快速区分两条轨道的关键信号。
从仓库结构看,Pre-Release 构建与 LTS 构建也是并行存在的:docker/pre-release/ee目录下维护了独立的预发布 Dockerfile(ee-production.Dockerfile等),而 LTS 专属构建位于docker/LTS/ee/(如 ee-production.Dockerfile、ee-preview.Dockerfile),说明两条轨道在镜像构建层面即已隔离。
Past Versions:已停止维护的历史版本
Past Versions 指不再被主动维护与支持的旧版本。这些版本虽然可能仍然可以拉取运行,但不推荐使用——尤其是在生产环境中,因为它们不会获得功能更新、缺陷修复或安全补丁。停留在这些版本上意味着安全风险与兼容性问题只能自行承担。
结合仓库事实,历史版本的边界也是可查证的:仓库根目录的 docs/versions.json 当前仅收录了3.0.0-LTS与2.50.0-LTS两个归档版本,docs/versioned_docs/下也仅保留了这两套版本化文档;更早的版本(如 2.x 早期版本)已不再提供文档归档,这从侧面印证了"停止维护后文档与支持同步收敛"的管理模式。若你的实例仍运行在 2.x 早期版本上,应尽快规划升级,而不是继续停留在该轨道。
三条轨道如何选:决策清单
综合上述三类版本的定义,可以归纳出如下决策逻辑:
- 你的场景是生产环境,对稳定性有硬性要求?→ 选择 LTS,并使用
tooljet/tooljet:ee-lts-latest标签跟踪最新 LTS; - 你想提前验证新特性、参与功能预览,且环境允许容忍缺陷?→ 选择 Pre-Release(3.1.x.x 及以上),但切勿用于生产;
- 你仍运行在 2.x 早期等历史版本?→ 视为 Past Versions,尽快按升级文档迁移到 LTS,避免安全补丁缺失的风险;
- 不确定当前最新 LTS 是什么?→ 查阅 Docker Hub 的
tooljet/tooljet标签页,关注*-ee-lts后缀的标签,并在每次升级前完成数据库全量备份。
从选择到落地:LTS 的实际部署路径
版本选型只有落到部署命令上才有意义。以下结合仓库内文档与部署清单,给出从快速体验 LTS 到生产化部署的完整路径。
快速体验:一条命令跑起最新 EE-LTS
try-tooljet.md 提供了单容器快速体验方案,只需一条命令即可在本地启动 ToolJet:
docker run \ --name tooljet \ --restart unless-stopped \ -p 80:80 \ --platform linux/amd64 \ -v tooljet_data:/var/lib/postgresql/13/main \ -v temporal_sqlite:/etc/temporal \ tooljet/try:ee-latest要点说明:
- 容器内已内置配置好的 PostgreSQL,所有数据保存在 Docker 卷
tooljet_data中; - 通过
--env或--env-file可覆盖各类环境变量(完整清单见 env-vars.md); docker stop tooljet停止容器,docker start tooljet再次启动。
如需自定义端口,例如运行在 8080,则使用:
docker run \ --name tooljet \ --restart unless-stopped \ -p 8080:8080 \ -e PORT=8080 \ --platform linux/amd64 \ -v tooljet_data:/var/lib/postgresql/13/main \ -v temporal_sqlite:/etc/temporal \ tooljet/try:ee-latest-e PORT=8080通过PORT环境变量让服务监听 8080 端口,实现了端口配置的灵活性。
而 LTS 单容器方案在仓库中有独立实现:ee-try-tooljet-lts.Dockerfile 以tooljet/tooljet:ee-lts-latest为基础镜像,通过 supervisord 统一管理 PostgREST、ToolJet 与 Redis 三个进程,并内置 PostgreSQL 16 与 Redis,其默认环境变量(如TOOLJET_HOST=http://localhost、PG_DB=tooljet_production、ENABLE_TOOLJET_DB=true、ENABLE_AI_FEATURES=true等)均可在运行时以-e覆盖,适合本地快速体验 EE-LTS。
生产部署:Docker Compose 两种姿势
需要长期运行时,推荐使用 Docker Compose 部署。docker.md 给出了两种方案:
方案一:内置 PostgreSQL(官方推荐)—— 使用官方 PostgreSQL 镜像,开箱即用:
curl -LO https://tooljet-deployments.s3.us-west-1.amazonaws.com/pre-release/docker/docker-compose-db.yaml mv docker-compose-db.yaml docker-compose.yaml mkdir postgres_data curl -LO https://tooljet-deployments.s3.us-west-1.amazonaws.com/pre-release/docker/.env.internal.example curl -LO https://tooljet-deployments.s3.us-west-1.amazonaws.com/pre-release/docker/internal.sh && chmod +x internal.sh mv .env.internal.example .env && ./internal.sh docker-compose up -dinternal.sh会自动生成关键密钥与密码(详见仓库内的 internal.sh):LOCKBOX_MASTER_KEY(openssl rand -hex 32,用于数据源凭据加密的锁箱主密钥)、SECRET_KEY_BASE(openssl rand -hex 64,用于安全签名操作)、PGRST_JWT_SECRET(PostgREST JWT 鉴权密钥)以及 PostgreSQL 随机密码PG_PASS/TOOLJET_DB_PASS,并组装出PGRST_DB_URI。对应的编排文件 docker-compose-db.yaml 由tooljet、postgres(postgres:13)与postgrest三个服务组成,并通过 bind mount 将数据持久化到本机postgres_data目录。
方案二:外部 PostgreSQL—— 适用于 AWS RDS、Google Cloud SQL 等托管数据库场景,将数据库凭据指向外部实例:
curl -LO https://tooljet-deployments.s3.us-west-1.amazonaws.com/pre-release/docker/docker-compose.yaml curl -LO https://tooljet-deployments.s3.us-west-1.amazonaws.com/pre-release/docker/external.sh curl -LO https://tooljet-deployments.s3.us-west-1.amazonaws.com/pre-release/docker/.env.external.example && chmod +x external.sh mv .env.external.example .env && ./external.sh docker-compose up -d对应的 docker-compose.yaml 中postgrest服务默认被注释,仅在ENABLE_TOOLJET_DB=true时启用——这正是"外部数据库方案不需要自带 PostgREST"的设计体现。
无论哪种方案,都建议设置TOOLJET_HOST为服务器公网 IP 或自定义域名:
TOOLJET_HOST=http://12.34.56.78 TOOLJET_HOST=https://tooljet.yourdomain.com注意TOOLJET_HOST必须以http://或https://开头;使用自定义域名时还需在 DNS 中添加指向服务器 IP 的A record。更多可配置项见 env-vars.md。
升级到最新 LTS:安全迁移三步走
upgrade-to-lts.md 定义了升级的核心流程:
- 查询最新 LTS 版本:LTS 大约每 3~5 个月发布一次,生命周期至少 18 个月;前往 Docker Hub 的
tooljet/tooljet标签页查看,LTS 标签遵循*-ee-lts命名(如tooljet/tooljet:ee-lts-latest); - 完成前置检查:升级前务必对数据库进行全量备份以防数据丢失;若当前版本早于v2.23.0-ee2.10.2,必须先升级到该版本,再继续升级到 LTS;
- 按部署方式执行升级:升级动作与部署方式绑定,对应各自的部署文档小节,包括 Docker(docker.md)、DigitalOcean(digitalocean.md)、AWS EC2(ec2.md)、AWS ECS(ecs.md)、OpenShift(openshift.md)、Helm(helm.md)、Kubernetes 及 GKE/AKS(kubernetes.md、kubernetes-gke.md、kubernetes-aks.md)、Azure Container Apps(azure-container.md)与 Google Cloud Run(google-cloud-run.md)。
版本号命名速查与镜像标签对照
| 版本号形态 | 轨道 | 典型标签 | 生产可用性 |
|---|---|---|---|
3.0.x-ee-lts/3.5.x-ee-lts | LTS | tooljet/tooljet:v3.0.24-ee-lts、tooljet/tooljet:ee-lts-latest | ✅ 推荐 |
3.1.x.x及以上 | Pre-Release | 预发布标签 | ⚠️ 仅测试/预览 |
| 2.x 早期版本 | Past Versions | 历史标签 | ❌ 不推荐 |
一句话总结选型要点:生产用*-ee-lts,尝鲜认准 3.1.x.x+,历史版本尽快迁移。在此基础上,用ee-lts-latest保持跟进、用docker-compose up -d完成落地、用"备份 → 检查版本下限 → 按部署文档执行"的流程完成升级,即可让 ToolJet 实例始终处于受支持的稳定轨道上。
【免费下载链接】ToolJetOpen-source foundation of ToolJet AI - the enterprise app generation platform for internal tools, dashboards, business applications, workflows and AI agents. Build visually, from a prompt, or from Claude Code, Codex and Cursor over MCP 🚀项目地址: https://gitcode.com/GitHub_Trending/to/ToolJet
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考