ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

OpenProject 本地开发环境搭建:用 Docker 跨平台启动并完成首次登录验证

OpenProject 本地开发环境搭建:用 Docker 跨平台启动并完成首次登录验证 OpenProject 本地开发环境搭建用 Docker 跨平台启动并完成首次登录验证【免费下载链接】openprojectOpenProject is the leading open source project management software for product, project and portfolio management. A powerful Jira alternative with agile planning, issue tracking, roadmaps, Gantt charts, time tracking, collaboration features, and more. Available on premises or in the cloud. ⭐ Star us on GitHub项目地址: https://gitcode.com/GitHub_Trending/op/openproject在 Windows、macOS、Linux 上搭建一套可调试的 OpenProject 开发环境本文给出最短路径全程依赖 Docker 容器化把 Ruby、Node、PostgreSQL 等依赖打包进统一可运行单元三个系统跑同一套流程完成后可直接访问本地页面、用默认账号登录并清楚下一步往哪里看、卡住时怎么自救。为什么优先走容器化路线依赖收敛Ruby、Node.js、PostgreSQL 17、memcached 都在容器里预装好你不用在本机逐个对齐版本。跨系统一致同一份docker-compose.yml在三大平台行为一致换电脑重建环境只需重新克隆仓库。官方推荐仓库文档明确把 Docker 方案定位为“最快上手开发”的方式配套初始化命令setup一并完成数据库迁移与种子数据。开始前的最小清单项目要求说明内存≥ 4GB 分配给 Docker官方明确 docker compose 需要至少 4GBmacOS 需在 Docker Desktop 里调高虚拟化内存上限磁盘≥ 20GB 空闲镜像、依赖缓存bundle 卷、构建产物都会落盘网络可拉取镜像与依赖首次setup会安装全部服务端 gem耗时明显Git已安装克隆仓库用Docker Desktop / Engine已安装并运行Windows 需启用 WSL2 后端Node.js仅需概念无需本机安装前端依赖由 frontend 容器node:24 基础镜像安装本机没有 Node 也能跑把项目落到本地git clone https://gitcode.com/GitHub_Trending/op/openproject cd openproject克隆完成后你进入的是开发分支的工作副本后续所有命令都在这个目录执行。如果目录里已存在config/database.yml先移走它会干扰容器内的数据库连接。三大平台统一启动方式先把环境变量与覆盖文件准备好一次即可cp .env.example .env.env里默认已带DEV_UID/DEV_GID保证容器内生成的文件归你所有而不是 root如果你的本机 UID 与之差异大改成id -u/id -g的结果。cp docker-compose.override.example.yml docker-compose.override.yml该文件用于调整端口暴露等覆盖项官方模板开箱即用。平台前置动作启动方式注意点WindowsDocker Desktop 已启动WSL2 后端启用PowerShell 中docker compose up -d backend首次构建镜像较慢属正常macOSDocker Desktop 已启动内存上限调至 4GB 以上终端docker compose up -d backend内存不足时前端容器会报 “Exit status 137”个别服务可在 override 里指定platform: linux/amd64Linux安装 Docker Engine 与 compose 插件终端docker compose up -d backend确认 Docker 服务开机自启首次初始化数据库、依赖与前端资源初始化做三件事建库并执行迁移与种子数据、装齐服务端依赖、装前端 web 依赖。最短命令序列docker network create gateway创建各服务共享的gateway网络compose 文件声明其为外部网络必须先存在重复执行无副作用。docker compose run --rm backend setup启动数据库作为依赖跑迁移和 seeders并安装全部服务端依赖首次运行耗时最长之后依赖缓存进卷会快很多。docker compose run --rm frontend npm install安装前端 web 依赖装完后前端容器即可进入热重载编译状态。docker compose up -d backend以后台模式拉起后端及其依赖db、cache、frontend、hocuspocus改动代码会被自动拾取无需重启容器。需要跑后台任务如导出、转换类 job时再按需启动 worker它比较吃资源docker compose up -d worker如何确认环境已经可用成功的信号有两个前端日志出现✔ Compiled successfully.后端日志出现 Puma 的启动成功信息。看到它们之后打开http://localhost:3000进入后端入口的登录页面打开http://localhost:4200是支持热重载的前端开发地址。使用仓库种子数据生成的默认账号登录用户名admin密码admin首次请求会比较慢懒加载初始化之后明显变快。登录成功后可以看到项目列表、工作包等管理界面说明 OpenProject 本地开发环境完整可用。卡住时的快速排查现象优先检查恢复动作容器起不来 / 端口被占Docker 服务是否在跑3000、4200 端口占用启动 Docker Desktop在docker-compose.override.yml里按官方示例重写端口映射数据库连不上docker compose ps db看 db 是否运行确认pgdata卷存在、.env中 DB 变量未被误改必要时重跑setup前端编译失败或报 “Exit status 137”前端日志docker compose logs frontendDocker 内存上限是否 ≥ 4GB提高 Docker 内存上限删除frontend/node_modules后重跑docker compose run --rm frontend npm install再docker compose restart frontend更多线索在log/development.log与docker compose logs -f backend的输出里。继续深入的入口开发环境总览docs/development/development-environment/Docker 方案详解TLS、调试、MinIO 等进阶项docs/development/development-environment/docker/贡献指南CONTRIBUTING.md代码评审规范提交前先看docs/development/code-review-guidelines/前端源码frontend/src/后端 REST APIlib/api/compose 配置本体docker-compose.yml高频命令速查命令用途docker compose up -d backend启动开发栈后端 db cache frontenddocker compose down停止并移除当前栈数据卷保留docker compose logs -f frontend跟踪前端编译日志判断是否编译成功bin/compose rspec spec/features/work_package_show_spec.rb跑单条 rspec 用例docker compose build --pull基础镜像变化如 Ruby 版本后重建镜像docker compose up -d worker需要后台任务时才启动 worker【免费下载链接】openprojectOpenProject is the leading open source project management software for product, project and portfolio management. A powerful Jira alternative with agile planning, issue tracking, roadmaps, Gantt charts, time tracking, collaboration features, and more. Available on premises or in the cloud. ⭐ Star us on GitHub项目地址: https://gitcode.com/GitHub_Trending/op/openproject创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表