Skip to content

Instantly share code, notes, and snippets.

@tsilvs
Created April 25, 2025 16:04
Show Gist options
  • Save tsilvs/dbdab6215c2ada438913bfa1a89af903 to your computer and use it in GitHub Desktop.
Save tsilvs/dbdab6215c2ada438913bfa1a89af903 to your computer and use it in GitHub Desktop.
OpenProject Docker Deployment script
#!/bin/bash
# OpenProject Docker Localhost Deploy Script
# Create data storage directories
OP_GROUP=openproject
sudo groupadd -f $OP_GROUP
sudo mkdir -p /var/lib/openproject/{assets,pgdata}
sudo chgrp $OP_GROUP /var/lib/openproject/{assets,pgdata}
sudo chmod -R 775 /var/lib/openproject/{assets,pgdata}
#sudo chmod -R 777 /var/lib/openproject/{assets,pgdata}
# Configure Variables
OP_RESTART=unless-stopped
OP_PORT1=3301
OP_PORTD1=80
OP_HOST="localhost:$OP_PORT1"
OP_HTTPS=false
OP_SECRET_KEY_BASE=secret
OP_LANG=en
OP_NAME=openproject
OP_VERSION="15"
# Open a port
sudo firewall-cmd --add-port=$OP_PORT1/tcp
# Create docker container
sudo docker run \
--init \
--detach \
--tty \
--restart=$OP_RESTART \
--publish $OP_PORT1:$OP_PORTD1 \
--env OPENPROJECT_HOST__NAME=$OP_HOST \
--env OPENPROJECT_HTTPS=$OP_HTTPS \
--env OPENPROJECT_SECRET_KEY_BASE=$OP_SECRET_KEY_BASE \
--env OPENPROJECT_DEFAULT__LANGUAGE=$OP_LANG \
--volume /var/lib/openproject/pgdata:/var/openproject/pgdata:Z \
--volume /var/lib/openproject/assets:/var/openproject/assets:Z \
--name $OP_NAME \
openproject/openproject:$OP_VERSION
# --user "$(id -u):$(getent group $OP_GROUP | cut -d: -f3)" \
# --interactive \
# To start: sudo docker start openproject
# To stop: sudo docker stop openproject
# Default login / password: admin / admin
# To remove, run:
# sudo docker stop openproject && sudo docker rm openproject
# sudo rm -r /var/lib/openproject
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment