5分钟部署NocoBase:三种安装方式对比及最佳实践
NocoBase作为极易扩展的无代码/低代码开发平台,提供了灵活的部署选项以适应不同用户需求。本文将对比Docker Compose、Dockerfile构建和create-nocobase-app三种安装方式的核心差异,并提供生产环境配置建议,帮助运营人员快速完成部署。
一、Docker Compose一键部署(推荐新手)
Docker Compose方式通过预配置的服务组合实现快速启动,包含NocoBase应用、数据库和管理工具等组件。核心配置文件为docker-compose.yml,定义了完整的服务栈:
version: "3"
networks:
nocobase:
driver: bridge
services:
mysql:
image: mysql:8
environment:
MYSQL_DATABASE: ${DB_DATABASE}
MYSQL_USER: ${DB_USER}
MYSQL_PASSWORD: ${DB_PASSWORD}
ports:
- "${DB_MYSQL_PORT}:3306"
nocobase:
image: node:16-stretch-slim
command: ["yarn", "start"]
ports:
- "${APP_PORT}:${APP_PORT}"
volumes:
- ./:/app
部署步骤:
- 克隆仓库:
git clone https://gitcode.com/GitHub_Trending/no/nocobase - 进入目录:
cd nocobase - 启动服务:
docker-compose up -d
该方式优势在于无需手动配置数据库连接,默认集成MySQL、PostgreSQL等多种数据库驱动,适合快速验证功能。通过docker/app-mysql/docker-compose.yml等子目录可选择不同数据库类型。
二、Dockerfile自定义构建(适合生产环境)
Dockerfile方式提供更精细的环境控制,支持插件预安装和性能优化。官方Dockerfile采用多阶段构建,包含依赖安装、应用打包和运行环境隔离:
FROM node:20-bookworm as builder
WORKDIR /tmp
COPY . /tmp
RUN yarn install && yarn build --no-dts
FROM node:20-bookworm-slim
COPY --from=builder /app/nocobase.tar.gz /app/
WORKDIR /app/nocobase
CMD ["/app/docker-entrypoint.sh"]
构建命令:
docker build -t nocobase:custom .
docker run -p 8000:8000 nocobase:custom
生产环境建议使用docker/nocobase/Dockerfile-full,该版本包含完整依赖和字体支持,解决中文显示和Office文件预览问题。通过ARG PLUGINS_DIRS参数可预先集成plugins/ai/等扩展功能。
三、create-nocobase-app源码安装(开发者首选)
create-nocobase-app是官方推荐的源码部署工具,支持自定义插件和开发模式。根据README.zh-CN.md说明,基础安装命令为:
npx create-nocobase-app@latest my-app
cd my-app
yarn install
yarn start
该方式需本地安装Node.js(v16+)和Yarn,适合需要二次开发的场景。通过修改packages/create-nocobase-app/src/可定制项目模板,结合examples/app/中的示例代码快速扩展功能。
四、三种方式对比与最佳实践
| 安装方式 | 部署难度 | 定制能力 | 资源占用 | 适用场景 |
|---|---|---|---|---|
| Docker Compose | ⭐⭐⭐⭐⭐ | 低 | 中 | 快速演示、测试环境 |
| Dockerfile构建 | ⭐⭐⭐ | 中 | 低 | 生产环境、服务器部署 |
| create-nocobase-app | ⭐⭐ | 高 | 高 | 二次开发、功能扩展 |
生产环境关键配置:
- 数据持久化:通过
storage/目录挂载确保数据不丢失,配置示例:volumes: - ./storage/db:/app/storage/db - ./storage/uploads:/app/storage/uploads - 性能优化:修改.env文件调整内存限制:
NODE_OPTIONS=--max-old-space-size=4096 - 安全加固:参考packages/auth/src/配置OAuth登录,禁用默认管理员账户
五、常见问题解决
- 端口冲突:修改docker-compose.yml中
APP_PORT参数,默认端口为13000 - 数据库连接失败:检查docker/nocobase/nocobase.conf中的数据库连接字符串
- 插件安装失败:使用源码安装方式时,通过
yarn add @nocobase/plugin-ai添加插件
完整部署文档可参考README.md,进阶配置可查阅docs/目录下的官方指南。选择合适的部署方式,5分钟内即可拥有功能完备的无代码开发平台。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考



