前言
最近正好准备未来的几个项目,需要有自己的管理软件,方便记录和管理,因此找了几个开源的程序。
这次就简单安装了OpenProject,准备体验一下。
简介
OpenProject 是开源工具中比较好用的项目管理工具,包括项目基础信息、任务包的灵活管理,输入即保存等友好特性。还能够录入任务工时,统计等。
安装
我的服务器是 Ubuntu 22.04 Jammy
版本的,下面就以我的服务器安装为例。
如果是其他系统的,可以查看官方的安装指南
1. 更新软件包索引并安装软件包
sudo apt-get update
sudo apt-get install apt-transport-https ca-certificates wget
2. 导入用于签署软件包的 PGP 密钥:
wget -qO- https://dl.packager.io/srv/opf/openproject/key | sudo apt-key add -
注意:导入密钥时可能会收到警告。
Warning: apt-key is deprecated. Manage keyring files in trusted.gpg.d instead (see apt-key(8))
发生这种情况是因为 APT 已经更新了它管理签名密钥的方式,而包提供程序尚不支持新方式。
3. 添加 OpenProject 包源代码:
sudo wget -O /etc/apt/sources.list.d/openproject.list \
https://dl.packager.io/srv/opf/openproject/stable/12/installer/ubuntu/22.04.repo
4. 下载 OpenProject 软件包:
sudo apt-get update
sudo apt-get install openproject
配置
启动配置向导前建议先创建数据库:
sudo -i -u postgres psql -c "CREATE DATABASE openproject;" sudo -i -u postgres psql -c "CREATE USER openproject WITH password 'xxxxxxxxx';" sudo -i -u postgres psql -c "GRANT ALL privileges ON DATABASE openproject TO openproject;"
1. 启动配置向导
sudo openproject reconfigure #交互式 - 手动选择存储在 /etc/openproject/installer.dat
sudo openproject configure #非交互式 - 使用存储在 /etc/openproject/installer.dat 中的值
我这边选择 交互式
方式运行。
2. 选择 OpenProject 版本
OpenProject 有两个版本:
-
默认版本,面向常规项目管理。
-
BIM版,专门针对建筑行业。
一般选择
default
默认版本
3. PostgreSQL 数据库配置
3.1 我已经安装过了,就不安装,直接选择 reuse
3.2 输入数据库地址
3.3 输入数据库端口
3.4 输入数据库用户名
3.5 输入数据库密码
3.6 输入数据库名称
如果选择
skip
的话,可以通过以下命令自行设置(不建议):sudo openproject config:set DATABASE_URL="postgresql://[user[:password]@][host][:port][/dbname][?param1=value1&...]
4. 安装Apache2服务器
一般来说,肯定有自己的服务器了,所以这边直接 Skip
,稍后自行配置
5. 安装memcached缓存
如果你系统中已经有了,可以选择 Skip
6. 输入完整的域名
7. 是否使用SSL连接,根据自己选择。
8. 设置管理员邮箱
之后等待配置完成:
9. 配置服务器
根据官方推荐:
Apache2的配置为:
<VirtualHost *:443>
ServerName openproject.example.com
# Logging
LogLevel Warn
ErrorLog /var/log/httpd/openproject.example.com-error.log
CustomLog /var/log/httpd/openproject.example.com-access.log combined
# Reverse Proxy
ProxyPreserveHost On
ProxyRequests Off
ProxyPass / http://[OPENPROJECT-HOST-IP]/
ProxyPassReverse / http://[OPENPROJECT-HOST-IP]/
#ProxyPass / https://[OPENPROJECT-HOST-IP]/ # if openproject's internal apache2 server/ssl is YES
#ProxyPassReverse / https://[OPENPROJECT-HOST-IP]/ # if openproject's internal apache2 server/ssl is YES
# Request Header
RequestHeader set "X-Forwarded-Proto" https
# SSL Certificate that was created by LetsEncrypt
Include /etc/letsencrypt/options-ssl-apache.conf
SSLEngine On
#SSLProxyEngine On # if openproject's internal apache2 server/ssl is YES
SSLCertificateFile /etc/letsencrypt/live/openproject.example.com/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/openproject.example.com/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/openproject.example.com/chain.pem # optional
</VirtualHost>
Nginx的配置为:
# assume :
# - openproject installed in /opt/openproject
# - local port: 6000
# - external port: 6020
server {
listen 6020;
server_name SERVER_DOMAIN_NAME;
root /opt/openproject/public;
location ~ / {
proxy_pass_request_headers on;
proxy_set_header X-Forwarded-Host $host:$server_port;
proxy_set_header X-Forwarded-Server $host:$server_port;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://127.0.0.1:6000;
}
}
访问
登录网站,点击右上角 Sign in
,首次默认账号名和密码为 admin
,登录后提示需要更改密码。
之后跳转到前台,选择 语言
- 简体中文
。
之后会有个教程,可谓用心良苦。
扩展:与nextcloud个人网盘应用集成
1. 在 Nextcloud 中添加 OpenProject Integration
应用
首先以管理员身份打开您的 Nextcloud 实例。
单击右上角的 头像
- 应用
,导航到 Nextcloud应用商店
。
在左侧菜单中,单击集成并查找 OpenProject 集成
应用程序。
或者使用右上角的搜索字段搜索 OpenProject
来查找它。找到应用程序后,单击 下载并启用
按钮。
2. 配置OpenProject集成
下载并启用 OpenProject
集成应用程序后,通过单击右上角的头像导航到 设置页面
- 设置
。在左侧菜单
中,单击 OpenProject
。
在出现的配置页面中,将看到一个名为 OpenProject
主机的空白文本字段。输入您要与Nextcloud连接的OpenProject实例的地址(包括 https://
)。
这边后面我就不演示了,由于我用的是NC26测试版的,还没有正式版发布,可能还未兼容。以后再来补充吧。
可以查看官网的配置流程
附官网的截图:
最后
简单使用了一下,感觉还不错,设置简单,界面简洁。各方面功能完全足够使用。
与它相对应的还有 Redmine
,Redmine
安装上会比 OpenProject
麻烦不少(按官方文档指导),但 Redmine
一找第三方的安装包,基本上是一键安装,省去不少麻烦。OpenProject
按官方指导安装就好。