本页内容

  • 准备工作
  • 安装所需的依赖项
  • 安装并配置 PostgreSQL
  • 安装 OpenProject
  • 配置 OpenProject
  • 访问 OpenProject Web 界面
  • 总结

OpenProject 是一款开源的任务管理软件,使用 Ruby on Rails 和 Angular JS 编写。它基于 Web,提供覆盖整个项目生命周期的经典管理方式。它提供社区版、云版和企业版三种版本。企业版提供一些高级功能、支持及托管服务,而社区版可免费下载,并可在任意服务器上自行托管。它提供了丰富的功能集,包括应用管理、发布规划、产品管理、团队协作、任务管理、缺陷跟踪以及预算规划。

本教程将向您展示如何在 Ubuntu 22.04 上安装 OpenProject 项目管理软件。

准备工作

  • 一台运行 Ubuntu 22.04 的服务器。
  • 服务器上已配置 root 密码。

安装所需的依赖项

在开始之前,您需要先安装一些安装 OpenProject 所需的依赖项。

apt-get install gnupg2 wget apt-transport-https -y

接下来,您还需要在服务器上安装 libssl1.1。不过,它并未包含在 Ubuntu 的默认软件源中。因此,您需要为 libssl 添加一个软件源。

echo "deb http://security.ubuntu.com/ubuntu impish-security main" | sudo tee /etc/apt/sources.list.d/impish-security.list

将软件源添加到 APT 后,使用以下命令更新软件源并安装 libssl1.1:

apt-get update -y
apt-get install libssl1.1 -y

安装好 libssl 后,您就可以进入下一步了。

安装并配置 PostgreSQL

OpenProject 使用 PostgreSQL 作为数据库后端。您可以使用以下命令进行安装:

apt install postgresql -y

PostgreSQL 安装完成后,使用以下命令启动 PostgreSQL 服务:

systemctl start postgresql

您也可以使用以下命令查看 PostgreSQL 的状态:

systemctl status postgresql

您应该会看到类似以下的输出:

? postgresql.service - PostgreSQL RDBMS
     Loaded: loaded (/lib/systemd/system/postgresql.service; enabled; vendor preset: enabled)
     Active: active (exited) since Sun 2022-05-22 08:37:49 UTC; 25s ago
    Process: 21934 ExecStart=/bin/true (code=exited, status=0/SUCCESS)
   Main PID: 21934 (code=exited, status=0/SUCCESS)
        CPU: 1ms

May 22 08:37:49 ubuntu2204 systemd[1]: Starting PostgreSQL RDBMS...
May 22 08:37:49 ubuntu2204 systemd[1]: Finished PostgreSQL RDBMS.

接下来,使用以下命令登录到 PostgreSQL 命令行:

su - postgres
psql

接下来,使用以下命令设置 PostgreSQL 密码并创建一个数据库:

ALTER USER postgres PASSWORD 'password';
create database openproject

接下来,使用以下命令退出 PostgreSQL 命令行:

exit
exit

接下来,编辑 PostgreSQL 的配置文件,并将认证方式修改为 md5:

nano /etc/postgresql/14/main/pg_hba.conf

将以下行进行修改:

# Database administrative login by Unix domain socket
local   all             postgres                                md5
# TYPE  DATABASE        USER            ADDRESS                 METHOD
# "local" is for Unix domain socket connections only
local   all             all                                     md5
# IPv4 local connections:
host    all             all             127.0.0.1/32            md5
# IPv6 local connections:
host    all             all             ::1/128                 md5

保存并关闭文件,然后重启 PostgreSQL 服务以使更改生效:

systemctl restart postgresql

安装 OpenProject

默认情况下,OpenProject 并未包含在 Ubuntu 22.04 的默认软件源中。因此,您需要将 OpenProject 软件源添加到 APT。您可以使用以下命令进行添加:

wget -qO- https://dl.packager.io/srv/opf/openproject/key | apt-key add -
wget -O /etc/apt/sources.list.d/openproject.list https://dl.packager.io/srv/opf/openproject/stable/12/installer/ubuntu/20.04.repo

添加软件源后,使用以下命令更新软件源:

apt-get update -y

接下来,使用以下命令安装 OpenProject:

apt-get install openproject -y

OpenProject 安装完成后,您将看到类似以下的输出:

Setting up libpangoft2-1.0-0:amd64 (1.50.6+ds-2) ...
Setting up libpangocairo-1.0-0:amd64 (1.50.6+ds-2) ...
Setting up libgs9:amd64 (9.55.0~dfsg1-0ubuntu5) ...
Setting up libmagickcore-6.q16-6-extra:amd64 (8:6.9.11.60+dfsg-1.3build2) ...
Setting up ghostscript (9.55.0~dfsg1-0ubuntu5) ...
Setting up tesseract-ocr (4.1.1-2.1build1) ...
Setting up imagemagick (8:6.9.11.60+dfsg-1.3build2) ...
Setting up openproject (12.1.4-1652787939.a0fe11cd.focal) ...
==============
The openproject package provides an installer. Please run the following command to finish the installation:
sudo openproject configure
==============
Processing triggers for libc-bin (2.35-0ubuntu3) ...
Processing triggers for man-db (2.10.2-1) ...
Processing triggers for mailcap (3.70+nmu1ubuntu1) ...

配置 OpenProject

安装完 OpenProject 后,您还需要对其进行配置。您可以使用以下命令进行配置:

openproject configure

系统会提示您配置 PostgreSQL 数据库,如下图所示:

在 Ubuntu 22.04 上安装 OpenProject 项目管理平台

点击“使用已有的 PostgreSQL 数据库”(Use an existing PostgreSQL database),然后按回车键。系统会提示您输入 PostgreSQL 主机地址:

在 Ubuntu 22.04 上安装 OpenProject 项目管理平台

输入 localhost 地址并按回车键。系统会提示您输入 PostgreSQL 端口:

在 Ubuntu 22.04 上安装 OpenProject 项目管理平台

输入 PostgreSQL 监听端口并按回车键。系统会提示您输入 PostgreSQL 用户名:

在 Ubuntu 22.04 上安装 OpenProject 项目管理平台

输入您的用户名并按回车键。系统会提示您输入 PostgreSQL 密码:

在 Ubuntu 22.04 上安装 OpenProject 项目管理平台

输入您的密码并按回车键。系统会提示您输入 PostgreSQL 数据库:

在 Ubuntu 22.04 上安装 OpenProject 项目管理平台

输入您的 PostgreSQL 数据库并按回车键。系统会提示您设置 Web 服务器:

在 Ubuntu 22.04 上安装 OpenProject 项目管理平台

选择“安装 Apache 服务器”(Install Apache server),按回车键。系统会提示您输入完全限定域名(FQDN):

在 Ubuntu 22.04 上安装 OpenProject 项目管理平台

输入您的域名并按回车键。系统会提示您输入服务器路径:

在 Ubuntu 22.04 上安装 OpenProject 项目管理平台

输入您的服务器路径并按回车键。系统会提示您是否启用 SSL:

在 Ubuntu 22.04 上安装 OpenProject 项目管理平台

选择“否”(No)并按回车键。系统会提示您是否安装 Subversion:

在 Ubuntu 22.04 上安装 OpenProject 项目管理平台

选择“安装 Subversion 仓库支持”(Install Subversion repository support)并按回车键。系统会提示您定义仓库路径:

在 Ubuntu 22.04 上安装 OpenProject 项目管理平台

输入您的仓库路径或保留默认值,按回车键。系统会提示您是否安装 Git 仓库:

在 Ubuntu 22.04 上安装 OpenProject 项目管理平台

选择“跳过”(skip)并按回车键。系统会提示您配置电子邮件:

在 Ubuntu 22.04 上安装 OpenProject 项目管理平台

选择“SMTP”并按回车键。系统会提示您选择认证类型:

在 Ubuntu 22.04 上安装 OpenProject 项目管理平台

选择“无”(None)并按回车键。系统会提示您定义 SMTP 主机:

在 Ubuntu 22.04 上安装 OpenProject 项目管理平台

输入您的 SMTP 主机并按回车键。系统会提示您输入 SMTP 端口:

在 Ubuntu 22.04 上安装 OpenProject 项目管理平台

输入您的 SMTP 端口并按回车键。系统会提示您输入 SMTP 域名:

在 Ubuntu 22.04 上安装 OpenProject 项目管理平台

输入您的 SMTP 域名并按回车键。系统会提示您输入您的电子邮件地址:

在 Ubuntu 22.04 上安装 OpenProject 项目管理平台

输入您的电子邮件地址并按回车键。系统会提示您是否安装 Memcached 服务器:

在 Ubuntu 22.04 上安装 OpenProject 项目管理平台

选择“跳过”(skip)并按回车键以开始配置。OpenProject 配置完成后,使用以下命令验证 Apache 服务:

systemctl status apache2

您应该会看到类似以下的输出:

? apache2.service - The Apache HTTP Server
     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
     Active: active (running) since Sun 2022-05-22 09:13:26 UTC; 51s ago
       Docs: https://httpd.apache.org/docs/2.4/
   Main PID: 38894 (/usr/sbin/apach)
      Tasks: 7 (limit: 2292)
     Memory: 28.2M
        CPU: 345ms
     CGroup: /system.slice/apache2.service
             ??38894 /usr/sbin/apache2 -k start
             ??38988 /usr/sbin/apache2 -k start
             ??39022 /usr/sbin/apache2 -k start
             ??39023 /usr/sbin/apache2 -k start
             ??39024 /usr/sbin/apache2 -k start
             ??39031 /usr/sbin/apache2 -k start
             ??39032 /usr/sbin/apache2 -k start

May 22 09:13:26 ubuntu2204 systemd[1]: Starting The Apache HTTP Server...
May 22 09:13:26 ubuntu2204 apachectl[38893]: AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 2>
May 22 09:13:26 ubuntu2204 systemd[1]: Started The Apache HTTP Server.

您也可以使用以下命令查看 OpenProject 的状态:

systemctl status openproject-web-1.service

您应该会看到类似以下的输出:

? openproject-web-1.service
     Loaded: loaded (/etc/systemd/system/openproject-web-1.service; enabled; vendor preset: enabled)
     Active: active (running) since Sun 2022-05-22 09:14:06 UTC; 47s ago
   Main PID: 40653 (web)
      Tasks: 25 (limit: 2292)
     Memory: 364.8M
        CPU: 18.618s
     CGroup: /system.slice/openproject-web-1.service
             ??40653 /bin/bash -e ./packaging/scripts/web
             ??40713 "puma 5.6.4 (tcp://127.0.0.1:6000) [openproject]" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" ">
             ??40743 "puma: cluster worker 0: 40713 [openproject]" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "">
             ??40744 "puma: cluster worker 1: 40713 [openproject]" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "">

May 22 09:14:43 ubuntu2204 openproject-web-1.service[40713]: [40713] *  Max threads: 16
May 22 09:14:43 ubuntu2204 openproject-web-1.service[40713]: [40713] *  Environment: production
May 22 09:14:43 ubuntu2204 openproject-web-1.service[40713]: [40713] *   Master PID: 40713
May 22 09:14:43 ubuntu2204 openproject-web-1.service[40713]: [40713] *      Workers: 2
May 22 09:14:43 ubuntu2204 openproject-web-1.service[40713]: [40713] *     Restarts: (?) hot (?) phased
May 22 09:14:43 ubuntu2204 openproject-web-1.service[40713]: [40713] * Preloading application
May 22 09:14:43 ubuntu2204 openproject-web-1.service[40713]: [40713] * Listening on http://127.0.0.1:6000
May 22 09:14:43 ubuntu2204 openproject-web-1.service[40713]: [40713] Use Ctrl-C to stop
May 22 09:14:43 ubuntu2204 openproject-web-1.service[40713]: [40713] - Worker 0 (PID: 40743) booted in 0.02s, phase: 0
May 22 09:14:43 ubuntu2204 openproject-web-1.service[40713]: [40713] - Worker 1 (PID: 40744) booted in 0.02s, phase: 0

访问 OpenProject Web 界面

现在,打开您的 Web 浏览器,使用 URL http://openproject.example.com/login 访问 OpenProject。您将被重定向到 OpenProject 登录页面:

在 Ubuntu 22.04 上安装 OpenProject 项目管理平台

输入默认的用户名和密码 admin / admin,然后点击“登录”按钮。您应该会看到密码重置界面:

在 Ubuntu 22.04 上安装 OpenProject 项目管理平台

设置您的新管理员密码,然后点击“保存”按钮以应用更改。您将在以下界面看到 OpenProject 仪表盘:

在 Ubuntu 22.04 上安装 OpenProject 项目管理平台

总结

恭喜!您已成功在 Ubuntu 22.04 服务器上安装了 OpenProject。现在,您可以在您的组织中部署 OpenProject,并开始从集中位置管理您的项目。