Let’s Launch a Project Management Container (Part 2)

Last time I left off was discussing building a project management server!

So first things first, ideally this instance will be used to track a few dozen projects for <10 people, so I am going to ignore the need for redundancy, scaling and various other more enterprise targeted options!

First things first, let’s see where we can host this!

Looking at the OpenProject Docker hub instance, there appears to be no Arm based processor builds, which means the Raspberry Pis are out, which leaves hosting it on one of my servers or the NAS. Seeing as I am trying to avoid placing items on the NAS, I’m leaning towards hosting it on one of my servers.

Now that placement is out of the way, let’s address the basic config:

version: "3"
services:
  openproject:
    container_name: openproject
    image: openproject/community:12
    ports:
      - 8450:80
    environment:
      SERVER_HOSTNAME: '127.0.0.1'
      SECRET_KEY_BASE: 'XXYYZZ'

    volumes:
      - /project/pgdata:/var/openproject/pgdata
      - /project/assets:/var/openproject/assets 
    restart: unless-stopped
 

As a matter of simple config, there are a few things to consider.

  1. Storage location
  2. File persistence
  3. Plugins & addons

In terms of Storage locations, it’s just going to connect to the NAS dumping all of its files in the container storage area.

In regards to file persistence, two folders are used by OpenProject: pgdata & assets, we will have to pass the storage from the network NAS into the container.

Finally, addressing plugins & addons. As I have no need for any addons I’ve found so far, I do not have to handle building my container with the addons involved.

With this, we’re done setting up a project VM. In about another month, I’ll be setting up a reverse proxy for it, and adding SSL. I really want to play with this for a bit to see how it behaves and to ensure I’ll want to use it for the long run!

Leave a Reply

Your email address will not be published. Required fields are marked *