Programming code abstract technology background of software developer and Computer script
Image: monsitj/Adobe Stock

OpenProject is a powerful open-source project management tool that can be used for traditional or Agile project management, and it includes all of the features you’re accustomed to using with project management such as Gantt charts, kanban, scrum and sprints. Also, OpenProject is secure, and it can be hosted on-site and deployed as a Docker container.

I will show you how easy it is to deploy OpenProject with the help of Docker.

SEE: Hiring kit: Project manager (TechRepublic Premium)

What you need to deploy OpenProject with Docker

You need an operating system that supports Docker, which can be Linux, macOS or Windows. I’ll demonstrate the step-by-step process on Ubuntu Server 22.04; if you’re using a different operating system, you only need to modify the Docker installation process, as the deployment will be the same, regardless of the OS.

How to install Docker CE and Docker Compose

The first thing to do is add the necessary repository. Before we do that, we’ll add the GPG key with the command:

curl -fsSL | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

Next, add the official Docker repository:

echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

Install the necessary dependencies with:

sudo apt-get install apt-transport-https ca-certificates curl gnupg lsb-release git -y

Now we can install the latest version of the Docker engine:

sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli -y

Make sure your user is still a member of the docker group with the command:

sudo usermod -aG docker $USER

Log out and log back in for the changes to take effect.

Install Docker Compose with:

sudo apt-get install docker-compose -y

How to deploy OpenProject with Docker

Clone the official OpenProject repository with:

git clone --depth=1 --branch=stable/12 openproject

Change into the newly-created directory with:

cd openproject/compose

Pull the latest OpenProject image with:

docker-compose pull

The pull command will take five to 15 minutes to complete, depending on the speed of your network connection and hosting server. When it does, deploy the containers with the command:

OPENPROJECT_HTTPS=false docker-compose up -d

How to access OpenProject

Give the containers a few minutes to deploy, open your default web browser, and point it to http://SERVER:8080. When prompted for login credentials, type admin/admin.

How to deploy with a single command

If the above steps don’t deploy successfully, you can always deploy the container with a single command:

docker run -it -p 8080:80 -e OPENPROJECT_SECRET_KEY_BASE=secret -e OPENPROJECT_HOST__NAME=localhost:8080 -e OPENPROJECT_HTTPS=false  openproject/community:12

This command can take some time to complete; when it finishes, give the containers time to deploy, and then, attempt to access OpenProject via your default browser. The default credentials for this method are the same, admin/admin.

You might also want to deploy OpenProject with persistent storage. For that, create the directories to house the data with the command:

sudo mkdir -p /var/lib/openproject/{pgdata,assets} 

Deploy the containers with:

docker run -it -p 8080:80 --name openproject -e OPENPROJECT_SECRET_KEY_BASE=secret -e OPENPROJECT_HOST__NAME=localhost:8080 -e OPENPROJECT_HTTPS=false -v /var/lib/openproject/pgdata:/var/openproject/pgdata -v /var/lib/openproject/assets:/var/openproject/assets -d openproject/community:12

Note: You might want to change the localhost entry in the above command to either the IP address of the domain of your hosting server; otherwise, an error will pop up that you cannot get rid of in the Settings portion of OpenProject.

Again, give the containers plenty of time to deploy before attempting to access OpenProject from your browser.

It doesn’t get any easier than OpenProject

If you want to host a project management platform in-house or via a third-party cloud host, it doesn’t get any easier than deploying OpenProject via Docker. Give this method a try, and see if OpenProject can’t fulfill all of your project management needs.

Subscribe to TechRepublic’s How To Make Tech Work on YouTube for all the latest tech advice for business pros from Jack Wallen.

If you are interested in learning more about Docker, check out the following resources in TechRepublic Academy:
Hacking and Securing Docker Containers
Linux and Docker Coding Bundle 
Docker and Kubernetes mini-bundle 

Subscribe to the Developer Insider Newsletter

From the hottest programming languages to commentary on the Linux OS, get the developer and open source news and tips you need to know. Delivered Tuesdays and Thursdays

Subscribe to the Developer Insider Newsletter

From the hottest programming languages to commentary on the Linux OS, get the developer and open source news and tips you need to know. Delivered Tuesdays and Thursdays