ToolJet 低代码平台搭建教程
ToolJet 是一款开源的低代码平台,专注于快速构建内部工具和业务应用。它提供可视化应用构建器、丰富的数据源集成和工作流自动化功能,让开发者和非技术人员都能快速搭建管理面板、数据看板和业务流程应用。本教程将在搬瓦工 VPS 上使用 Docker 部署 ToolJet。
一、ToolJet 核心优势
- 可视化应用构建器:拖拽式界面设计,内置 40+ UI 组件和多种布局模式。
- 丰富的数据源支持:支持 PostgreSQL、MySQL、MongoDB、REST API、GraphQL、Stripe、Twilio、Slack 等 50+ 种数据源。
- ToolJet Database:内置无代码数据库,无需额外配置即可创建和管理数据表。
- 工作流引擎:可视化工作流编辑器,支持定时触发、Webhook 触发和事件驱动的自动化流程。
- 多环境发布:支持开发和生产环境隔离,应用修改不影响线上版本。
- 企业级安全:支持 SSO 登录、审计日志、细粒度权限控制和数据加密。
二、环境准备
- 操作系统:Ubuntu 20.04+(推荐 Ubuntu 22.04)。
- 内存:至少 2GB RAM,推荐 4GB。
- 磁盘:至少 15GB 可用空间。
- Docker:已安装 Docker 和 Docker Compose(参考 Docker 安装教程)。
选购搬瓦工 VPS 请参考 全部方案,使用优惠码 NODESEEK2026 可享受 6.77% 折扣。
三、Docker Compose 部署
3.1 创建项目目录
mkdir -p /opt/tooljet && cd /opt/tooljet
3.2 生成密钥
echo "LOCKBOX_KEY: $(openssl rand -hex 32)"
echo "SECRET_KEY: $(openssl rand -hex 64)"
3.3 创建环境变量文件
cat > .env <<'EOF'
TOOLJET_HOST=http://your-domain.com
LOCKBOX_MASTER_KEY=your_lockbox_key_from_above
SECRET_KEY_BASE=your_secret_key_from_above
PG_HOST=db
PG_PORT=5432
PG_USER=tooljet
PG_PASS=your_db_password
PG_DB=tooljet
ORM_LOGGING=false
DEPLOYMENT_PLATFORM=docker
EOF
3.4 创建 Docker Compose 文件
cat > docker-compose.yml <<'EOF'
version: '3.8'
services:
tooljet:
image: tooljet/tooljet:latest
container_name: tooljet
restart: always
ports:
- "8080:80"
env_file:
- .env
depends_on:
- db
command: npm run start:prod
db:
image: postgres:15-alpine
container_name: tooljet-db
restart: always
environment:
POSTGRES_USER: tooljet
POSTGRES_PASSWORD: your_db_password
POSTGRES_DB: tooljet
volumes:
- postgres_data:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U tooljet"]
interval: 10s
timeout: 5s
retries: 5
volumes:
postgres_data:
EOF
3.5 启动服务
docker compose up -d
docker compose logs -f tooljet
等待初始化完成后,访问 http://你的服务器IP:8080 开始使用。首次访问会显示注册页面,创建管理员账户。
四、配置反向代理
apt update && apt install nginx -y
cat > /etc/nginx/sites-available/tooljet <<'EOF'
server {
listen 80;
server_name tooljet.example.com;
client_max_body_size 100m;
location / {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}
EOF
ln -s /etc/nginx/sites-available/tooljet /etc/nginx/sites-enabled/
nginx -t && systemctl reload nginx
apt install certbot python3-certbot-nginx -y
certbot --nginx -d tooljet.example.com
获得 SSL 证书后,更新 .env 文件中的 TOOLJET_HOST 为 HTTPS 地址,然后重启服务。
五、构建应用示例
5.1 创建用户管理面板
以构建一个简单的用户管理面板为例。首先创建新应用,在数据源面板连接你的 PostgreSQL 数据库。然后创建查询获取用户数据,将 Table 组件拖拽到画布上并绑定查询结果。添加搜索输入框和筛选下拉框,实现动态查询。最后添加新增和编辑表单的模态框,通过按钮事件触发 INSERT 和 UPDATE 查询。
5.2 使用 ToolJet Database
ToolJet 内置的无代码数据库让你无需外部数据库即可管理数据。进入 ToolJet Database 页面,可以直接创建表格、定义字段和管理数据。支持文本、数字、布尔值、日期等字段类型,数据可以通过应用查询直接访问。
5.3 工作流自动化
ToolJet 的工作流引擎支持定时任务和事件触发的自动化流程。例如每天定时从 API 获取数据并写入数据库,或者当表单提交时自动发送通知邮件。工作流通过可视化节点编辑器配置,支持条件分支、循环和错误处理。
六、配置 SMTP 邮件
在 .env 文件中添加邮件配置:
DEFAULT_FROM_EMAIL=noreply@example.com
SMTP_HOST=smtp.example.com
SMTP_PORT=587
SMTP_USERNAME=your-email@example.com
SMTP_PASSWORD=your-email-password
SMTP_DOMAIN=example.com
重启服务使配置生效:
docker compose down && docker compose up -d
七、备份与升级
# 备份数据库
docker exec tooljet-db pg_dump -U tooljet tooljet > /opt/tooljet/backup_$(date +%Y%m%d).sql
# 升级 ToolJet
cd /opt/tooljet
docker compose pull
docker compose down
docker compose up -d
总结
ToolJet 是一款功能全面的低代码平台,特别适合快速构建企业内部工具。它比 Appsmith 多了内置数据库和工作流引擎,让应用开发更加一站式。同类型工具还有 Budibase,可以根据具体需求进行选择。购买搬瓦工 VPS 请参考 全部方案,使用优惠码 NODESEEK2026 可享受折扣。更多部署教程请访问 搬瓦工VPS中文网。