news 2026/6/15 3:25:52

自建OurBoard.io服务器:完整部署指南与环境配置

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
自建OurBoard.io服务器:完整部署指南与环境配置

自建OurBoard.io服务器:完整部署指南与环境配置

【免费下载链接】ourboardAn online whiteboard项目地址: https://gitcode.com/gh_mirrors/ou/ourboard

OurBoard.io是一款功能强大的在线白板工具,支持多人实时协作,适用于团队头脑风暴、项目规划和创意设计等场景。本指南将详细介绍如何在自己的服务器上部署OurBoard.io,让你拥有专属的协作白板平台。

准备工作:系统要求与环境依赖

在开始部署前,请确保你的服务器满足以下基本要求:

  • 操作系统:Linux(推荐Ubuntu 20.04或更高版本)
  • Docker:20.10.x或更高版本
  • Docker Compose:v2.x或更高版本
  • Node.js:18.x(推荐使用nvm管理版本)
  • Git:用于克隆项目代码

核心依赖检查

通过以下命令验证Docker和Node.js是否已正确安装:

docker --version docker-compose --version node --version

快速部署:使用Docker Compose一键启动

OurBoard项目提供了完整的Docker化配置,通过docker-compose可以快速部署整个服务栈,包括PostgreSQL数据库、Keycloak认证服务和应用服务器。

1. 克隆项目代码

git clone https://gitcode.com/gh_mirrors/ou/ourboard cd ourboard

2. 启动服务栈

项目根目录下的docker-compose.yaml文件定义了完整的服务配置,包括:

  • PostgreSQL数据库(端口13338)
  • Keycloak认证服务(端口8080)
  • 应用服务组件

执行以下命令启动所有服务:

docker-compose up -d

3. 验证服务状态

检查所有容器是否正常运行:

docker-compose ps

正常情况下,你应该看到dbkeycloak-dbkeycloak三个容器处于up状态。

手动部署:分步构建与配置

如果你需要更灵活的部署方式,可以选择手动构建和配置各个组件。

1. 安装依赖包

项目使用Yarn作为包管理器,根目录的package.json定义了工作区配置和脚本命令:

# 安装项目依赖 yarn install # 构建所有模块 yarn build

2. 配置数据库

OurBoard使用PostgreSQL存储数据,数据库迁移脚本位于backend/migrations/目录。手动配置数据库步骤:

# 启动数据库(使用Docker) docker run -d -p 13338:5432 \ -e POSTGRES_USER=r-board \ -e POSTGRES_PASSWORD=secret \ --name ourboard-db postgres:12 # 运行数据库迁移 cd backend tsx src/tools/wait-for-db.ts # 迁移脚本将自动执行

3. 启动后端服务

后端服务代码位于backend/src/目录,主要入口文件为server.ts:

# 开发模式启动 yarn dev:backend # 生产模式启动 yarn start:backend

4. 构建并启动前端

前端代码位于frontend/src/目录,使用esbuild构建:

# 构建前端资源 cd frontend yarn build # 开发模式启动(带热重载) yarn watch

关键配置:环境变量与服务端口

OurBoard的核心配置文件位于backend/src/config.ts,你可以通过环境变量或配置文件调整服务参数。

主要环境变量

  • PORT:后端服务端口(默认3001)
  • DATABASE_URL:数据库连接地址(默认postgres://r-board:secret@localhost:13338/r-board
  • KEYCLOAK_URL:Keycloak认证服务地址(默认http://localhost:8080

端口映射说明

根据docker-compose.yaml配置,服务默认端口映射如下:

  • 应用服务:3001
  • PostgreSQL数据库:13338
  • Keycloak认证:8080

常见问题:故障排除与性能优化

1. 数据库连接失败

如果后端服务无法连接数据库,请检查:

  • PostgreSQL容器是否正常运行
  • 数据库用户名和密码是否与docker-compose.yaml中的配置一致
  • 网络是否允许容器间通信

2. 性能优化建议

  • 数据库优化:定期执行compact-history.ts清理历史数据
  • 资源限制:在docker-compose中为各服务设置合理的内存限制
  • 静态资源:通过Nginx代理前端静态资源,提高加载速度

启动与访问:验证部署结果

完成部署后,通过以下步骤验证服务是否正常运行:

  1. 访问应用:打开浏览器访问http://服务器IP:3001
  2. Keycloak认证:首次访问需通过Keycloak登录,默认管理员账号:admin/admin
  3. 创建白板:登录后创建新白板,邀请团队成员测试实时协作功能

图:OurBoard平台登录界面,使用Keycloak进行身份验证

总结

通过本指南,你已成功部署了自建的OurBoard.io服务器。无论是使用Docker Compose一键部署,还是手动构建配置,都可以根据实际需求灵活调整。OurBoard的实时协作功能将极大提升团队效率,而自建服务器则确保了数据安全和隐私保护。

如需进一步定制,可以查阅项目中的state-management.md了解状态管理机制,或修改frontend/src/components/目录下的UI组件来自定义界面。

【免费下载链接】ourboardAn online whiteboard项目地址: https://gitcode.com/gh_mirrors/ou/ourboard

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/15 3:23:52

从FAST-LIVO的编译报错看ROS项目依赖管理:以Sophus和Vikit为例

从FAST-LIVO编译报错剖析ROS项目依赖管理的艺术当你第一次尝试编译FAST-LIVO这样的前沿SLAM系统时,是否也被各种依赖问题折磨得焦头烂额?Sophus的版本兼容性、Vikit的链接错误、头文件缺失...这些看似琐碎的问题背后,隐藏着ROS/C项目依赖管理…

作者头像 李华
网站建设 2026/6/15 3:22:58

如何安全下载和使用Revit完整破解版:5个关键步骤详解

如何安全下载和使用Revit完整破解版:5个关键步骤详解 【免费下载链接】Revit-crk revit-crack-download revit-free-download-full-version-with-crack revit-crack-2024 revit-keygen revit-serial-key revit-full-crack revit-cracked-version revit-license-key…

作者头像 李华
网站建设 2026/6/15 3:22:33

如何通过跨平台微信数据提取工具实现高效取证分析

如何通过跨平台微信数据提取工具实现高效取证分析 【免费下载链接】GoWxDump 删库 项目地址: https://gitcode.com/gh_mirrors/go/GoWxDump 在数字时代,微信聊天记录已成为重要的个人数据资产,但如何安全、高效地提取和分析这些数据却是一个技术难…

作者头像 李华
网站建设 2026/6/15 3:21:57

MXC路线图:未来功能与开发计划全解析

MXC路线图:未来功能与开发计划全解析 【免费下载链接】mxc Policy-driven, layered isolation and containment 项目地址: https://gitcode.com/GitHub_Trending/mx/mxc Microsoft eXecution Container(MXC) 是一个革命性的跨平台沙盒…

作者头像 李华
网站建设 2026/6/15 3:19:55

技术视角拆解华为OD笔试系统:牛客网OJ环境、Chrome要求与防作弊逻辑

技术视角拆解华为OD笔试系统:牛客网OJ环境、Chrome要求与防作弊逻辑当在线编程评测系统(Online Judge)遇上企业级招聘考核,技术实现的严谨性与用户体验的平衡成为关键。华为OD笔试采用的牛客网平台,本质上是一个高度定…

作者头像 李华
网站建设 2026/6/15 3:18:55

Image Extender部署指南:本地部署与OpenRouter API配置详解

Image Extender部署指南:本地部署与OpenRouter API配置详解 【免费下载链接】image-extender Seamlessly extend any image in any direction with AI. Open-source web app powered by Gemini via OpenRouter, with Poisson-blended seams and best-of-3 variant p…

作者头像 李华