OpenProject安装部署与使用介绍
1. OpenProject简介
1-1. 什么是OpenProject
OpenProject是一个功能全面的开源项目管理软件,它提供了一套集成的工具来支持项目规划、协作和监控。它的核心功能包括任务和问题跟踪、时间管理、新闻和文档管理,以及集成版本控制系统。OpenProject支持敏捷和瀑布项目管理方法,允许团队使用看板和甘特图来组织和监控项目进度。
该软件以其灵活性和可定制性而闻名,用户可以根据项目需求调整工作流程和界面。OpenProject还提供了丰富的报表功能,帮助团队成员和管理层洞察项目状态和性能。此外,它支持多项目管理,使得大型组织能够同时管理多个项目。
OpenProject的开源特性意味着用户可以自由访问源代码,并根据需要进行修改。用户可以选择自托管OpenProject,以确保数据安全和合规性。它还拥有一个活跃的社区,为用户提供支持和分享最佳实践的平台。无论是小型团队还是大型企业,OpenProject都能提供强大的项目管理解决方案,以提高工作效率和透明度。
1-1. OpenProject优缺点
OpenProject优势
- 开源和免费:作为开源软件,OpenProject 允许用户自由使用和修改源代码,没有许可证费用。
- 自托管:用户可以在自己的服务器上部署 OpenProject,这有助于确保数据的安全性和合规性。
- 多功能:提供了项目管理、任务跟踪、时间跟踪、文档管理、甘特图、看板等多种功能。
- 灵活性和可定制性:用户可以根据需要自定义工作流程、字段和视图。
- 支持敏捷和瀑布:适合敏捷开发和传统瀑布模型,支持 Scrum 和 Kanban 等方法论。
- 多项目管理:能够同时管理多个项目和子项目。
- 报表和分析:提供多种报表工具,帮助团队和管理层监控项目进度和性能。
- 社区支持:拥有一个活跃的社区,用户可以在社区中寻求帮助和分享经验。
- 多语言支持:支持多种语言,适合不同语言的用户。
- 插件系统:通过插件扩展功能,虽然与商业解决方案相比,插件生态可能不那么丰富。
OpenProject不足
- 性能问题:在处理大量数据或用户时,性能可能不如一些商业解决方案。
- 用户界面:用户界面可能不如一些现代的项目管理工具直观和用户友好。
- 学习曲线:对于新用户来说,可能需要一定的时间来熟悉和掌握 OpenProject 的所有功能。
- 技术支持:虽然有社区支持,但可能不如商业解决方案那样提供专业的技术支持。
- 插件限制:虽然支持插件,但插件的数量和质量可能不如一些商业竞争对手。
- 集成限制:与其他系统的集成可能不如一些商业工具那样广泛和深入。
- 安全性和更新:自托管意味着用户需要自己负责软件的安全更新和维护。
- 移动应用:可能没有专门的移动应用,或者移动应用的功能不如桌面版本全面。
- 定制开发成本:如果需要深度定制,可能需要额外的开发成本。
- 文档和培训资源:虽然有文档和社区,但可能不如商业解决方案那样提供全面的培训和文档资源。
【注意】
虽然Openproject是开源项目,但有部分功能是付费的,例如Openproject的工作组规划,进行项目拖拽的方式进行可视化管理的功能,开源版不可用
2. OpenProject安装部署
2-1. 部署前需要了解事项
Openproject官方网址:https://www.openproject.org/
官方提供了4种不同的部署方式
- 使用DEB或RPM包安装
- 使用Docker container容器化部署
- 部署在Kubernetes容器编排集群中
- Helm部署,容器包管理器部署(类比与linux系统使用yum安装工具)
需自行安装docker环境,本次部署采用容器化部署,并使用持久化挂载存储
Docker是一种轻松分发自包含应用程序的方法。project为社区版提供了一个Docker镜像,可以在服务器上轻松安装和升级。然而,与手动或基于包的安装相反,需要先安装Docker引擎。
官方提供了2个启动示例:
- 样例1,无持久化运行,试用调试场景
docker run -d -p 8080:80 \-e OPENPROJECT_SECRET_KEY_BASE=secret \-e OPENPROJECT_HOST__NAME=localhost:8080 \-e OPENPROJECT_HTTPS=false \openproject/openproject:15
- 样例2,有持久化存储,可运行于生产
sudo mkdir -p /var/lib/openproject/{pgdata,assets}docker run -d -p 8080:80 --name openproject \-e OPENPROJECT_HOST__NAME=openproject.example.com \-e OPENPROJECT_SECRET_KEY_BASE=secret \-v /var/lib/openproject/pgdata:/var/openproject/pgdata \-v /var/lib/openproject/assets:/var/openproject/assets \openproject/openproject:15
示例1 非常适合快速入门,但我们强烈建议不要将此设置用于生产目的,因为它禁用HTTPS模式并且不安全。
此外,如果你想在生产环境中运行OpenProject,你需要确保重新启动容器时数据不会丢失。
为了实现这一点,官方建议在安装Docker引擎的主机系统上创建一个目录(例如:/var/lib/openproject),所有这些数据都将存储在其中。即使
docker stop openproject
和docker start openproject
,数据依旧存在
2-2. 安装部署
- 拉取镜像
[root@hdt-dmcp-openproject ~]# docker pull openproject/openproject:14
考虑有些用户下载镜像时可能因网络问题,下载不了,例如提示:
Error response from daemon: Get https://registry-1.docker.io/v2/: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)
<可以通过百度分享下载,镜像是我在官方下载后打包上传分享的>
通过网盘分享的文件:openproject_14_img.tar
链接: https://pan.baidu.com/s/1iMMQCoq49Tle428B7NQOyQ?pwd=da3p 提取码: da3p
也可以通过浏览器自行去dockerhub的官方仓库去拉取上传至服务器,镜像来源dockerhub官方镜像地址:https://hub.docker.com/
登录可以直接点击download下载
[root@hdt-dmcp-openproject ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
openproject/openproject 14 560aae2c41ce 2 weeks ago 2.68GB
- 创建持久化存储目录
[root@hdt-dmcp-openproject ~]# mkdir -p /var/lib/openproject/{pgdata,assets,bin}[root@hdt-dmcp-openproject ~]# cd /var/lib/openproject/
[root@hdt-dmcp-openproject openproject]# ll
total 12
drwxr-xr-x 5 app app 4096 Nov 18 16:43 assets
drwxr-xr-x 2 root root 4096 Nov 18 16:43 bin
drwx------ 19 102 107 4096 Nov 18 16:44 pgdata
assets 应用信息,属于映射目录
bin 脚本目录,并非映射目录,用来管理容器的目录
pgdata 数据postgre存储目录
- 创建启动脚本
[root@hdt-dmcp-openproject openproject]# cd bin
[root@hdt-dmcp-openproject bin]# vim project_run.sh
#!/bin/bash
docker run -d -p 8080:80 --name openproject \-e OPENPROJECT_HOST__NAME=172.16.20.224:8080 \-e OPENPROJECT_SECRET_KEY_BASE=secret \-e OPENPROJECT_HTTPS=false \-e OPENPROJECT_DEFAULT__LANGUAGE=zh-CN \-v /var/lib/openproject/pgdata:/var/openproject/pgdata \-v /var/lib/openproject/assets:/var/openproject/assets \openproject/openproject:14[root@hdt-dmcp-openproject bin]# chmod +x project_run.sh
注意:
- 8080:80 ,容易服务端口为80,映射到服务器的端口为8080,可自定义把8080改为自己想要的端口,但80不能改
- OPENPROJECT_HOST__NAME=172.16.20.224:8080,这里的IP需要改为自己的IP地址,且端口映射和-p 参数的同步
- OPENPROJECT_HTTPS=false,表示禁用ssl,https协议,这个可根据自己环境选择
- openproject/openproject:14,为version14,最新版已经更新到15,也可以自己下载15的镜像,这里标签改为15即可
- 启动服务
[root@hdt-dmcp-openproject bin]# bash project_run.sh
- 查看运行情况
[root@hdt-dmcp-openproject bin]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
47c08f6d693f openproject/openproject:14 "./docker/prod/entry…" 23 hours ago Up 23 hours 0.0.0.0:8080->80/tcp openproject
- 访问登录
第一次登录时默认的账号为admin
,密码为admin
3. Project界面使用
- 创建项目
- 工作包(任务)管理
- 在项目中,你可以创建工作包来管理任务。工作包可以是任务、里程碑、阶段等