How to Install OpenProject on Ubuntu 22.04

OpenProject is an open-source task management software written in Ruby on Rails and Angular JS. It is web-based and provides classical management for the entire project life cycle. It offers three editions: community, cloud, and enterprise editions. Enterprise editions offer some premium features, support & hosting facilities, while the community edition is free to download and can be hosted on any server. It offers a rich set of features including, application management, release planning, product management, team collaboration, task management, bug tracking, and budget planning.

This tutorial will show you how to install OpenProject project management software on Ubuntu 22.04.

Prerequisites

  • A server running Ubuntu 22.04.
  • A root password is configured on the server.

Install Required Dependencies

Before starting, you will need to install some dependencies required to install OpenProject.

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

Next, you will also need to install libssl1.1 on your server. However, it is not included in the Ubuntu default repository. So you will need to add a repository for libssl.

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

Once the repository is added to the APT, update the repository and install libssl1.1 using the following command:

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

Once libssl is installed, you can proceed to the next step.

Install and Configure PostgreSQL

OpenProject uses PostgreSQL as a database backend. You can install it using the following command:

apt install postgresql -y

Once the PostgreSQL is installed, start the PostgreSQL service with the following command:

systemctl start postgresql

You can also check the status of the PostgreSQL with the following command:

systemctl status postgresql

You should see the following output:

? 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.

Next, log into the PostgreSQL shell with the following command:

su - postgres
psql

Next, set the PostgreSQL password and create a database with the following command:

ALTER USER postgres PASSWORD 'password';
create database openproject

Next, exit from the PostgreSQL shell using the following command:

exit
exit

Next, edit the PostgreSQL configuration file and change the authentication method to md5:

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

Change the following lines:

# 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

Save and close the file then restart the PostgreSQL service to apply the changes:

systemctl restart postgresql

Install OpenProject

By default, OpenProject is not included in the Ubuntu 22.04 default repository. So you will need to add the OpenProject repository to APT. You can add it using the following command:

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

Once the repository is added, update the repository with the following command:

apt-get update -y

Next, install the OpenProject using the following command:

apt-get install openproject -y

Once the OpenProject is installed, you will get the following output:

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) ...

Configure OpenProject

After installing OpenProject, you will need to configure the OpenProject. You can do it using the following command:

openproject configure

You will be asked to define the PostgreSQL database as shown below:

Click on the Use an existing PostgreSQL database and press the Enter key. You will be asked for a PostgreSQL host:

Provide localhost address and press the Enter key. You will be asked to provide a PostgreSQL port:

Provide a PostgreSQL listening port and press the Enter key. You will be asked to provide a PostgreSQL username:

Provide your username and press the Enter key. You will be asked to provide a PostgreSQL password:

Provide your password and press the Enter key. You will be asked to provide a PostgreSQL database:

Provide your PostgreSQL database and press the Enter key. You will be asked to set up a webserver:

Select Install Apache server and press the Enter key. You will be asked to provide a fully qualified domain name:

Provide your domain name and press the Enter key. You will be asked to provide a server path:

Provide your server path and press the Enter key. You will be asked to enable the SSL:

Select No and press the Enter key. You will be asked to install the Subversion:

Select Install Subversion repository support and press the Enter key. You will be asked to define the repository path:

Provide your repository path or leave it to default and press the Enter key. You will be asked to install the Git repository:

Select skip and press the Enter key. You will be asked to use email:

Select SMTP and press the Enter key. You will be asked to select an authentication type:

Select None and press the Enter key. You will be asked to define the SMTP host:

Provide your SMTP host and press the Enter key. You will be asked to provide an SMTP port:

Provide your SMTP port and press the Enter key. You will be asked to provide your SMTP domain:

Provide your SMTP domain and press the Enter key. You will be asked to provide your email:

Provide your email and press the Enter key. You will be asked to install Memcached server:

Select skip and press the Enter key to start the configuration. Once the OpenProject is configured, verify the Apache service using the following command:

systemctl status apache2

You should see the following output:

? 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.

You can also check the OpenProject status using the following command:

systemctl status openproject-web-1.service

You should get the following output:

? 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

Access OpenProject Web Interface

Now, open your web browser and access the OpenProject using the URL http://openproject.example.com/login. You will be redirected to the OpenProject login page:

Provide default username and password as admin / admin and click on the Login button. You should see the password reset screen:

Set your new admin password and click on the Save button to apply the changes. You should see the OpenProject dashboard on the following screen:

Conclusion

Congratulations! You have successfully installed OpenProject on the Ubuntu 22.04 server. You can now deploy OpenProject in your organization and start managing your project from the central location.

Share this page:

0 Comment(s)