(Last Updated On: November 11, 2018)

Hello good folks!. This short guide will take you through the steps to Install OpenProject Community Edition on Ubuntu 18.04 / 16.04 LTS. OpenProject is a powerful project management and support tool for small to large teams that help you throughout the entire project management lifecycle.

Outstanding features of OpenProject

  • Project planning and scheduling
  • Product roadmap and release planning
  • Task management and team collaboration
  • Agile and Scrum
  • Time tracking, cost reporting, and budgeting
  • Bug tracking
  • Wikis
  • Forums
  • Meeting agendas and meeting minutes

Step 1: Install transport-https & memcached

Kick off the installation by ensuring your apt package list is updated and installing the transport-httpspackage:

sudo apt update
sudo apt -y install apt-transport-https memcached

Step 2: Enable universe and add OpenProject Repository

Import the PGP key used to sign OpenProject packages:

wget -qO- https://dl.packager.io/srv/opf/openproject-ce/key | sudo apt-key add -

Enable universe on your Ubuntu 18.04 and add OpenProject repository by running the commands:

sudo add-apt-repository universe
sudo wget -O /etc/apt/sources.list.d/openproject-ce.list https://dl.packager.io/srv/opf/openproject-ce/stable/8/installer/ubuntu/18.04.repo

Step 3: Install MySQL Database server

OpenProject requires a database server to function. It is recommended to use the latest MySQL version (>= 5.7) as it supports special characters such as emojis (emoticons) out of the box.

sudo apt -y install mysql-server libmysqlclient-dev mysql-client

Once the database has been installed and service running, create a database and user for OpenProject.

Login to the mysql console as root user

$ mysql -uroot -p

Then create a database and user

CREATE USER 'openproject'@'localhost' IDENTIFIED BY 'StrongPassword';
CREATE DATABASE openproject CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
GRANT ALL PRIVILEGES ON openproject.* TO 'openproject'@'localhost';
FLUSH PRIVILEGES;
QUIT

Step 4:  Install the OpenProject Community Edition package

After adding the OpenProject repository and configuring a database for OpenProject, install OpenProject Community Edition package on your Ubuntu 18.04 LTS.

sudo apt update
sudo apt -y install openproject

Step 5: Configure OpenProject on Ubuntu 18.04 / 16.04 LTS

The OpenProject installation wizard supports the automatic setup for MySQL databases. The OpenProject package is configured through ENV parameters that are passed to the openproject user.

Read current ENV parameters by running:

$ openproject run env

To write/read individual parameters, use openproject config:set PARAMETER=VALUE and openproject config:get PARAMETER.

Run the package configuration wizard with the following command:

openproject configure

1. On database setup wizard, select “Use an existing database” and click < OK>

2. Use MySQL IP 127.0.0.1

3. Use MySQL port 3306

4. Provide database username for OpenProject

5. Provide the password used by the openprojectuser to connect to the MySQL server:

6. Provide database name

7. Provide server FQDN

8. Set whether to enable SSL for MySQL database connection

9. Agree to install and configure Apache web server

10. Set Apache application domain name

11.Optionally set Server Path prefix to load OpenProject from, e.g /openproject

12. Set to enable SSL for Apache Web server URL

Configure other settings or skip them for later configuration and install Memcache when prompted.

On a successful installation, systemd symbolic links for services will be set for autostart.

Created symlink /etc/systemd/system/multi-user.target.wants/openproject.service -> /etc/systemd/system/openproject.service.
Created symlink /etc/systemd/system/openproject.service.wants/openproject-web.service -> /etc/systemd/system/openproject-web.service.
Scaling up...
Created symlink /etc/systemd/system/openproject-web.service.wants/openproject-web-1.service -> /etc/systemd/system/openproject-web-1.service.
--> done.
Created symlink /etc/systemd/system/openproject.service.wants/openproject-worker.service -> /etc/systemd/system/openproject-worker.service.
Scaling up...
Created symlink /etc/systemd/system/openproject-worker.service.wants/openproject-worker-1.service -> /etc/systemd/system/openproject-worker-1.service.
--> done.

Apache configuration file will be created automatically for you.

$ cat /etc/apache2/sites-enabled/openproject.conf 
Include /etc/openproject/addons/apache2/includes/server/*.conf

<VirtualHost *:80>
  ServerName example.com
  DocumentRoot /opt/openproject/public

  ProxyRequests off
  Include /etc/openproject/addons/apache2/includes/vhost/*.conf
  # Can't use Location block since it would overshadow all the other proxypass directives on CentOS
  ProxyPass /openproject/ http://127.0.0.1:6000/openproject/ retry=0
  ProxyPassReverse /openproject/ http://127.0.0.1:6000/openproject/
</VirtualHost>

Step 6: Access OpenProject Dashboard

Visit the URL http://example.com/openproject/login to Login to the web console as admin user:

Username: admin
Password: admin

You’ll be required to change the admin password.

Explore the OpenProject Dashboard to create and manager Projects, Authentication, users e.t.c.

Reconfiguring OpenProject

If you ever want to reconfigure OpenProject, run the command:

$ openproject reconfigure

The command above will bring up the installation wizard again. Please be aware that it will start the configuration/installation process from scratch.

If you’ve just updated your OpenProject version, you should run openproject configure which would automatically reuse your previous configuration, and only asks for your input if new configuration options are available.

Read more on OpenProject Administration Documentation. Also check:

How to Install Taiga.io Project Management Tool on Ubuntu 18.04 LTS