9.2 KiB
9.2 KiB
n8n汉化
📚 学习资源
在使用Docker部署时,可以通过添加环境变量和挂载中文语言包的方式实现界面汉化。
🌏 汉化的必要性
为什么需要汉化
👥
团队协作
降低团队成员的学习门槛,提高工作效率
📖
理解准确
避免因语言理解偏差导致的配置错误
🎯
专注业务
减少语言障碍,专注于业务逻辑设计
🚀
快速上手
新用户能更快熟悉界面和功能
🐳 Docker部署汉化方案
方案一:环境变量汉化
最简单的汉化方式是通过环境变量设置:
version: '3.8'
services:
n8n:
image: n8nio/n8n
container_name: n8n
restart: unless-stopped
ports:
- "5678:5678"
environment:
# 基础配置
- GENERIC_TIMEZONE=Asia/Shanghai
- N8N_DEFAULT_LOCALE=zh-CN
- N8N_DEFAULT_BINARY_DATA_MODE=filesystem
# 界面汉化
- LOCALE=zh-CN
- LC_ALL=zh_CN.UTF-8
- LANG=zh_CN.UTF-8
# 认证配置
- N8N_BASIC_AUTH_ACTIVE=true
- N8N_BASIC_AUTH_USER=admin
- N8N_BASIC_AUTH_PASSWORD=your-password
volumes:
- n8n_data:/home/node/.n8n
- /data/n8n/files:/files
volumes:
n8n_data:
方案二:挂载语言包
更完整的汉化需要挂载自定义语言包:
version: '3.8'
services:
n8n:
image: n8nio/n8n
container_name: n8n-zh
restart: unless-stopped
ports:
- "5678:5678"
environment:
- GENERIC_TIMEZONE=Asia/Shanghai
- N8N_DEFAULT_LOCALE=zh-CN
- NODE_ENV=production
volumes:
- n8n_data:/home/node/.n8n
- /data/n8n/files:/files
# 挂载中文语言包
- ./locales:/usr/local/lib/node_modules/n8n/dist/packages/editor-ui/dist/static/locales
depends_on:
- postgres
postgres:
image: postgres:13
restart: unless-stopped
environment:
- POSTGRES_USER=n8n
- POSTGRES_PASSWORD=n8n_password
- POSTGRES_DB=n8n
# 设置数据库字符集
- POSTGRES_INITDB_ARGS=--encoding=UTF-8 --lc-collate=zh_CN.UTF-8 --lc-ctype=zh_CN.UTF-8
volumes:
- postgres_data:/var/lib/postgresql/data
volumes:
n8n_data:
postgres_data:
📁 语言包文件结构
创建本地语言包目录
# 创建语言包目录
mkdir -p /data/n8n/locales
# 下载中文语言包
curl -o /data/n8n/locales/zh-CN.json https://raw.githubusercontent.com/n8n-io/n8n/master/packages/editor-ui/src/plugins/i18n/locales/zh.json
自定义翻译内容
{
"n8n": {
"auth": {
"signin": "登录",
"signup": "注册",
"signout": "退出登录",
"forgotPassword": "忘记密码"
},
"generic": {
"save": "保存",
"cancel": "取消",
"delete": "删除",
"edit": "编辑",
"create": "创建",
"search": "搜索",
"loading": "加载中..."
},
"workflows": {
"new": "新建工作流",
"save": "保存工作流",
"execute": "执行工作流",
"activate": "激活",
"deactivate": "停用"
},
"nodes": {
"add": "添加节点",
"delete": "删除节点",
"duplicate": "复制节点",
"rename": "重命名"
},
"credentials": {
"title": "凭证管理",
"create": "创建凭证",
"edit": "编辑凭证",
"test": "测试连接"
}
}
}
🛠️ 完整汉化部署脚本
一键汉化部署脚本
#!/bin/bash
# n8n中文版一键部署脚本
set -e
echo "🚀 开始部署n8n中文版..."
# 创建必要目录
echo "📁 创建目录结构..."
mkdir -p /data/n8n/{config,files,locales,backups}
# 下载语言包
echo "🌏 下载中文语言包..."
curl -s -o /data/n8n/locales/zh-CN.json \
https://raw.githubusercontent.com/n8n-io/n8n/master/packages/editor-ui/src/plugins/i18n/locales/zh.json
# 创建docker-compose配置
echo "🐳 创建Docker配置..."
cat > /data/n8n/docker-compose.yml << 'EOF'
version: '3.8'
services:
postgres:
image: postgres:13
restart: unless-stopped
environment:
- POSTGRES_USER=n8n
- POSTGRES_PASSWORD=n8n_secure_password
- POSTGRES_DB=n8n
- POSTGRES_INITDB_ARGS=--encoding=UTF-8 --lc-collate=zh_CN.UTF-8 --lc-ctype=zh_CN.UTF-8
volumes:
- postgres_data:/var/lib/postgresql/data
networks:
- n8n-network
n8n:
image: n8nio/n8n:latest
restart: unless-stopped
ports:
- "5678:5678"
environment:
# 数据库配置
- DB_TYPE=postgresdb
- DB_POSTGRESDB_HOST=postgres
- DB_POSTGRESDB_PORT=5432
- DB_POSTGRESDB_DATABASE=n8n
- DB_POSTGRESDB_USER=n8n
- DB_POSTGRESDB_PASSWORD=n8n_secure_password
# 基础配置
- GENERIC_TIMEZONE=Asia/Shanghai
- N8N_DEFAULT_LOCALE=zh-CN
- N8N_ENCRYPTION_KEY=your-encryption-key-32-chars
# 界面汉化
- LOCALE=zh-CN
- LC_ALL=zh_CN.UTF-8
- LANG=zh_CN.UTF-8
# 安全配置
- N8N_BASIC_AUTH_ACTIVE=true
- N8N_BASIC_AUTH_USER=admin
- N8N_BASIC_AUTH_PASSWORD=admin_secure_password
# Webhook配置
- WEBHOOK_URL=http://localhost:5678/
volumes:
- /data/n8n/config:/home/node/.n8n
- /data/n8n/files:/files
- /data/n8n/locales:/usr/local/lib/node_modules/n8n/dist/packages/editor-ui/dist/static/locales
depends_on:
- postgres
networks:
- n8n-network
volumes:
postgres_data:
networks:
n8n-network:
driver: bridge
EOF
# 启动服务
echo "🚀 启动n8n服务..."
cd /data/n8n
docker-compose up -d
# 等待服务启动
echo "⏳ 等待服务启动..."
sleep 30
# 检查服务状态
echo "🔍 检查服务状态..."
docker-compose ps
# 显示访问信息
echo "✅ n8n中文版部署完成!"
echo "🌐 访问地址: http://localhost:5678"
echo "👤 用户名: admin"
echo "🔑 密码: admin_secure_password"
echo ""
echo "📚 管理命令:"
echo " 查看日志: cd /data/n8n && docker-compose logs -f"
echo " 重启服务: cd /data/n8n && docker-compose restart"
echo " 停止服务: cd /data/n8n && docker-compose down"
echo " 备份数据: cd /data/n8n && docker-compose exec postgres pg_dump -U n8n n8n > backups/backup-\$(date +%Y%m%d).sql"
运行部署脚本
# 下载并执行部署脚本
curl -sL https://raw.githubusercontent.com/your-repo/n8n-zh/main/setup.sh | bash
# 或者手动执行
chmod +x setup-n8n-zh.sh
./setup-n8n-zh.sh
🎨 界面汉化效果
汉化前后对比
| 功能区域 | 英文原版 | 中文汉化 |
|---|---|---|
| 主菜单 | Workflows, Credentials, Executions | 工作流, 凭证, 执行历史 |
| 节点类型 | Triggers, Inputs, Processes, Outputs | 触发器, 输入, 处理, 输出 |
| 操作按钮 | Execute, Save, Activate, Settings | 执行, 保存, 激活, 设置 |
| 状态信息 | Running, Success, Error, Waiting | 运行中, 成功, 错误, 等待中 |
汉化覆盖范围
✅ 已汉化内容:
- 主界面菜单和导航
- 节点分类和常用节点名称
- 工作流操作按钮
- 错误提示信息
- 设置界面选项
⚠️ 部分汉化内容:
- 某些第三方节点名称
- 高级配置选项
- 开发者相关功能
❌ 未汉化内容:
- 社区节点描述
- 技术文档链接
- 日志详细信息
🔧 汉化问题排查
常见问题和解决方案
| 问题 | 症状 | 解决方案 |
|---|---|---|
| 语言包未生效 | 界面仍显示英文 | 检查挂载路径和环境变量 |
| 部分乱码 | 某些文字显示异常 | 确认字符集设置为UTF-8 |
| 功能异常 | 汉化后功能出错 | 使用官方语言包版本 |
验证汉化是否成功
# 检查容器环境变量
docker exec n8n env | grep -E "(LANG|LOCALE)"
# 检查语言包文件
docker exec n8n ls -la /usr/local/lib/node_modules/n8n/dist/packages/editor-ui/dist/static/locales/
# 查看n8n日志
docker-compose logs n8n | grep -i locale
📚 参考资源
- 详细汉化教程: n8n完整汉化指南
- 官方多语言支持: n8n Internationalization
- 社区汉化项目: GitHub上的中文社区维护版本
通过汉化,您的团队可以更高效地使用n8n,减少语言障碍带来的学习成本。
上一章:凭证管理{ .md-button } 下一章:常用节点{ .md-button .md-button--primary }