opf / opf/openproject-docker-compose

flexible Database Connection in Dockercontainer

Open
#157 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Shell
Stars
342
Forks
315
PR merge metrics
No merged PRs in 30d

Description

I tried on my Ubuntu machine to run the openproject:17.4-slim container with the database URL parameter.

docker run -d --name openproject --restart=unless-stopped
-p 8080:80 --net local
-e DATABASE_URL=postgres://user:pwd@127.0.0.1:5432/openproject
-e OPENPROJECT_HOST__NAME=openproject.lab:8012
-e OPENPROJECT_HTTPS=false
-e OPENPROJECT_DEFAULT__LANGUAGE=en
-e SECRET_KEY_BASE=****
-v /media/share/docker/openproject/assets:/var/openproject/assets
openproject/openproject:17.4-slim

And after checking the logs, I found out that this version requires Postgres 17. Without any more profound investigation, it seems to me not always necessary to force upgrades to the latest available version of the DBMS. If there are some specific PostgreSQL features used, it makes more sense to define a minimal version like Postgres 11. So I mention a configuration switch initialized by default with the really minimal version of Postgres is needed. Especially if an ORM like Hibernate is used, there is huge flexibility. Also, the latest JDBC driver has minimal requirements; they do not always force the latest version. Maybe it could also be an option to include different JDBC drivers in the assets folder.

-e POSTGRES_VERSION = 14, ..., 18

It is really inconvenient for complex productive systems to always force a DBMS upgrade.

[1] https://bucardo.org/postgres_all_versions

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue names no repository files or tests. Start by tracing the openproject:17.4-slim image configuration and the DATABASE_URL path from the shown Docker command, then determine where the PostgreSQL 17 requirement is imposed. Done means a clearly defined way to use supported PostgreSQL versions without breaking the image or database-driver setup.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker, postgresql
Domain
databases, infrastructure
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.