Open Project #4123
Replies: 3 comments 1 reply
-
|
I would be super grateful to have an OpenProject template. Has anyone got it working? |
Beta Was this translation helpful? Give feedback.
-
|
I managed to get it working, but I can't verify if this is safe and secure because it involves setting HSTS config to false. networks:
frontend: null
backend: null
volumes:
opdata: null
x-op-restart-policy:
restart: unless-stopped
x-op-image:
image: 'openproject/openproject:${TAG:-16-slim}'
x-op-app:
image: 'openproject/openproject:${TAG:-16-slim}'
restart: unless-stopped
environment:
OPENPROJECT_HTTPS: '${OPENPROJECT_HTTPS:-true}'
OPENPROJECT_HOST__NAME: '${OPENPROJECT_HOST__NAME:-localhost:8080}'
OPENPROJECT_HSTS: '${OPENPROJECT_HSTS:-true}'
RAILS_CACHE_STORE: memcache
OPENPROJECT_CACHE__MEMCACHE__SERVER: 'cache:11211'
OPENPROJECT_RAILS__RELATIVE__URL__ROOT: '${OPENPROJECT_RAILS__RELATIVE__URL__ROOT:-}'
DATABASE_URL: '${DATABASE_URL:-postgres://postgres:p4ssw0rd@db/openproject?pool=20&encoding=unicode&reconnect=true}'
RAILS_MIN_THREADS: '${RAILS_MIN_THREADS:-4}'
RAILS_MAX_THREADS: '${RAILS_MAX_THREADS:-16}'
IMAP_ENABLED: '${IMAP_ENABLED:-false}'
volumes:
- 'openproject:/var/openproject/assets'
services:
cache:
image: memcached
restart: unless-stopped
networks:
- backend
web:
image: 'openproject/openproject:${TAG:-16-slim}'
restart: unless-stopped
environment:
OPENPROJECT_HTTPS: '${OPENPROJECT_HTTPS:-true}'
OPENPROJECT_HOST__NAME: '${OPENPROJECT_HOST__NAME:-localhost:8080}'
OPENPROJECT_HSTS: '${OPENPROJECT_HSTS:-true}'
RAILS_CACHE_STORE: memcache
OPENPROJECT_CACHE__MEMCACHE__SERVER: 'cache:11211'
OPENPROJECT_RAILS__RELATIVE__URL__ROOT: '${OPENPROJECT_RAILS__RELATIVE__URL__ROOT:-}'
DATABASE_URL: '${DATABASE_URL:-postgres://postgres:p4ssw0rd@db/openproject?pool=20&encoding=unicode&reconnect=true}'
RAILS_MIN_THREADS: '${RAILS_MIN_THREADS:-4}'
RAILS_MAX_THREADS: '${RAILS_MAX_THREADS:-16}'
IMAP_ENABLED: '${IMAP_ENABLED:-false}'
volumes:
- 'openproject:/var/openproject/assets'
command: ./docker/prod/web
networks:
- frontend
- backend
depends_on:
- cache
- seeder
labels:
- autoheal=true
healthcheck:
test:
- CMD
- curl
- '-f'
- 'http://localhost:8080${OPENPROJECT_RAILS__RELATIVE__URL__ROOT:-}/health_checks/default'
interval: 10s
timeout: 3s
retries: 3
start_period: 30s
autoheal:
image: 'willfarrell/autoheal:1.2.0'
volumes:
- '/var/run/docker.sock:/var/run/docker.sock'
environment:
AUTOHEAL_CONTAINER_LABEL: autoheal
AUTOHEAL_START_PERIOD: 600
AUTOHEAL_INTERVAL: 30
worker:
image: 'openproject/openproject:${TAG:-16-slim}'
restart: unless-stopped
environment:
OPENPROJECT_HTTPS: '${OPENPROJECT_HTTPS:-true}'
OPENPROJECT_HOST__NAME: '${OPENPROJECT_HOST__NAME:-localhost:8080}'
OPENPROJECT_HSTS: '${OPENPROJECT_HSTS:-true}'
RAILS_CACHE_STORE: memcache
OPENPROJECT_CACHE__MEMCACHE__SERVER: 'cache:11211'
OPENPROJECT_RAILS__RELATIVE__URL__ROOT: '${OPENPROJECT_RAILS__RELATIVE__URL__ROOT:-}'
DATABASE_URL: '${DATABASE_URL:-postgres://postgres:p4ssw0rd@db/openproject?pool=20&encoding=unicode&reconnect=true}'
RAILS_MIN_THREADS: '${RAILS_MIN_THREADS:-4}'
RAILS_MAX_THREADS: '${RAILS_MAX_THREADS:-16}'
IMAP_ENABLED: '${IMAP_ENABLED:-false}'
volumes:
- 'openproject:/var/openproject/assets'
command: ./docker/prod/worker
networks:
- backend
depends_on:
- cache
- seeder
cron:
image: 'openproject/openproject:${TAG:-16-slim}'
restart: unless-stopped
environment:
OPENPROJECT_HTTPS: '${OPENPROJECT_HTTPS:-true}'
OPENPROJECT_HOST__NAME: '${OPENPROJECT_HOST__NAME:-localhost:8080}'
OPENPROJECT_HSTS: '${OPENPROJECT_HSTS:-true}'
RAILS_CACHE_STORE: memcache
OPENPROJECT_CACHE__MEMCACHE__SERVER: 'cache:11211'
OPENPROJECT_RAILS__RELATIVE__URL__ROOT: '${OPENPROJECT_RAILS__RELATIVE__URL__ROOT:-}'
DATABASE_URL: '${DATABASE_URL:-postgres://postgres:p4ssw0rd@db/openproject?pool=20&encoding=unicode&reconnect=true}'
RAILS_MIN_THREADS: '${RAILS_MIN_THREADS:-4}'
RAILS_MAX_THREADS: '${RAILS_MAX_THREADS:-16}'
IMAP_ENABLED: '${IMAP_ENABLED:-false}'
volumes:
- 'openproject:/var/openproject/assets'
command: ./docker/prod/cron
networks:
- backend
depends_on:
- cache
- seeder
seeder:
image: 'openproject/openproject:${TAG:-16-slim}'
restart: on-failure
environment:
OPENPROJECT_HTTPS: '${OPENPROJECT_HTTPS:-true}'
OPENPROJECT_HOST__NAME: '${OPENPROJECT_HOST__NAME:-localhost:8080}'
OPENPROJECT_HSTS: '${OPENPROJECT_HSTS:-true}'
RAILS_CACHE_STORE: memcache
OPENPROJECT_CACHE__MEMCACHE__SERVER: 'cache:11211'
OPENPROJECT_RAILS__RELATIVE__URL__ROOT: '${OPENPROJECT_RAILS__RELATIVE__URL__ROOT:-}'
DATABASE_URL: '${DATABASE_URL:-postgres://postgres:p4ssw0rd@db/openproject?pool=20&encoding=unicode&reconnect=true}'
RAILS_MIN_THREADS: '${RAILS_MIN_THREADS:-4}'
RAILS_MAX_THREADS: '${RAILS_MAX_THREADS:-16}'
IMAP_ENABLED: '${IMAP_ENABLED:-false}'
volumes:
- 'openproject:/var/openproject/assets'
command: ./docker/prod/seeder
networks:
- backendI removed the DB because I wanted to use an external one, but you're free to leave it in if you prefer. For env vars I only used these, I configured the rest (SMTP) in the dashboard: |
Beta Was this translation helpful? Give feedback.
-
|
I've just wasted 3 hours trying to get Open Project to load as much as a login page... I'm so glad I decided to give Coolify a go before trying to run a single deployment that isn't in the recipe book (2 / 3 deployments I really should get working) |
Beta Was this translation helpful? Give feedback.

Uh oh!
There was an error while loading. Please reload this page.
-
It would be great to have a service deployment for Open Project! https://www.openproject.org/
Beta Was this translation helpful? Give feedback.
All reactions