Content
Updated by Markus Kahl 12 days ago
### Steps to reproduce
* look at the docker build in our github actions: [https://github.com/opf/openproject/actions/workflows/docker.yml](https://github.com/opf/openproject/actions/workflows/docker.yml)
Locally you can reproduce it as follows:
```bash
docker build -t test -f docker/prod/Dockerfile .
docker run --rm -it test
```
### What is the buggy behavior?
* the test of the container fails because it fails to start due to the following error
```text
-----> Setting PGVERSION=13 PGBIN=/usr/lib/postgresql/13/bin PGCONF_FILE=/etc/postgresql/13/main/postgresql.conf
-----> Starting the all-in-one OpenProject setup at /app/docker/prod/supervisord...
-----> Database cluster not found. Creating a new one in /var/openproject/pgdata...
chown: warning: '.' should be ':': ‘postgres.postgres’
The files belonging to this database system will be owned by user "postgres".
This user must also own the server process.
The database cluster will be initialized with locale "C.UTF-8".
The default text search configuration will be set to "english".
Data page checksums are disabled.
fixing permissions on existing directory /var/openproject/pgdata ... ok
creating subdirectories ... ok
selecting dynamic shared memory implementation ... posix
selecting default max_connections ... 100
selecting default shared_buffers ... 128MB
selecting default time zone ... Etc/UTC
creating configuration files ... ok
running bootstrap script ... ok
performing post-bootstrap initialization ... ok
syncing data to disk ... ok
Success. You can now start the database server using:
/usr/lib/postgresql/13/bin/pg_ctl -D /var/openproject/pgdata -l logfile start
waiting for server to start.... done
server started
CREATE ROLE
Trying to contact PostgreSQL server instance or waiting for it to come online.
Starting memcached: memcached.
-----> Running migrations...
bundler: failed to load command: rake (/app/vendor/bundle/ruby/3.4.0/bin/rake)
/usr/local/lib/ruby/3.4.0/bundler/definition.rb:676:in 'Bundler::Definition#materialize': Could not find rb_sys-0.9.108, mini_portile2-2.8.8 in locally installed gems (Bundler::GemNotFound)
from /usr/local/lib/ruby/3.4.0/bundler/definition.rb:232:in 'Bundler::Definition#specs'
from /usr/local/lib/ruby/3.4.0/bundler/definition.rb:299:in 'Bundler::Definition#specs_for'
from /usr/local/lib/ruby/3.4.0/bundler/runtime.rb:18:in 'Bundler::Runtime#setup'
from /usr/local/lib/ruby/3.4.0/bundler.rb:167:in 'Bundler.setup'
from /usr/local/lib/ruby/3.4.0/bundler/setup.rb:32:in 'block in <top (required)>'
from /usr/local/lib/ruby/3.4.0/bundler/ui/shell.rb:173:in 'Bundler::UI::Shell#with_level'
from /usr/local/lib/ruby/3.4.0/bundler/ui/shell.rb:119:in 'Bundler::UI::Shell#silence'
from /usr/local/lib/ruby/3.4.0/bundler/setup.rb:32:in '<top (required)>'
from /usr/local/lib/ruby/3.4.0/bundler/cli/exec.rb:57:in 'Kernel#require_relative'
from /usr/local/lib/ruby/3.4.0/bundler/cli/exec.rb:57:in 'Bundler::CLI::Exec#kernel_load'
from /usr/local/lib/ruby/3.4.0/bundler/cli/exec.rb:23:in 'Bundler::CLI::Exec#run'
from /usr/local/lib/ruby/3.4.0/bundler/cli.rb:452:in 'Bundler::CLI#exec'
from /usr/local/lib/ruby/3.4.0/bundler/vendor/thor/lib/thor/command.rb:28:in 'Bundler::Thor::Command#run'
from /usr/local/lib/ruby/3.4.0/bundler/vendor/thor/lib/thor/invocation.rb:127:in 'Bundler::Thor::Invocation#invoke_command'
from /usr/local/lib/ruby/3.4.0/bundler/vendor/thor/lib/thor.rb:538:in 'Bundler::Thor.dispatch'
from /usr/local/lib/ruby/3.4.0/bundler/cli.rb:35:in 'Bundler::CLI.dispatch'
from /usr/local/lib/ruby/3.4.0/bundler/vendor/thor/lib/thor/base.rb:584:in 'Bundler::Thor::Base::ClassMethods#start'
from /usr/local/lib/ruby/3.4.0/bundler/cli.rb:29:in 'Bundler::CLI.start'
from /usr/local/lib/ruby/gems/3.4.0/gems/bundler-2.6.2/exe/bundle:28:in 'block in <top (required)>'
from /usr/local/lib/ruby/3.4.0/bundler/friendly_errors.rb:117:in 'Bundler.with_friendly_errors'
from /usr/local/lib/ruby/gems/3.4.0/gems/bundler-2.6.2/exe/bundle:20:in '<top (required)>'
from /usr/local/bundle/bin/bundle:25:in 'Kernel#load'
from /usr/local/bundle/bin/bundle:25:in '<main>'
```
### What is the expected behavior?
* the container should start and the build succeed with the test passing
### Environment information
**OpenProject installation type**
* Docker All-in-one container
**OpenProject version**
_v15.3.0 (release branch)_
* look at the docker build in our github actions: [https://github.com/opf/openproject/actions/workflows/docker.yml](https://github.com/opf/openproject/actions/workflows/docker.yml)
Locally you can reproduce it as follows:
```bash
docker build -t test -f docker/prod/Dockerfile .
docker run --rm -it test
```
### What is the buggy behavior?
* the test of the container fails because it fails to start due to the following error
```text
-----> Setting PGVERSION=13 PGBIN=/usr/lib/postgresql/13/bin PGCONF_FILE=/etc/postgresql/13/main/postgresql.conf
-----> Starting the all-in-one OpenProject setup at /app/docker/prod/supervisord...
-----> Database cluster not found. Creating a new one in /var/openproject/pgdata...
chown: warning: '.' should be ':': ‘postgres.postgres’
The files belonging to this database system will be owned by user "postgres".
This user must also own the server process.
The database cluster will be initialized with locale "C.UTF-8".
The default text search configuration will be set to "english".
Data page checksums are disabled.
fixing permissions on existing directory /var/openproject/pgdata ... ok
creating subdirectories ... ok
selecting dynamic shared memory implementation ... posix
selecting default max_connections ... 100
selecting default shared_buffers ... 128MB
selecting default time zone ... Etc/UTC
creating configuration files ... ok
running bootstrap script ... ok
performing post-bootstrap initialization ... ok
syncing data to disk ... ok
Success. You can now start the database server using:
/usr/lib/postgresql/13/bin/pg_ctl -D /var/openproject/pgdata -l logfile start
waiting for server to start.... done
server started
CREATE ROLE
Trying to contact PostgreSQL server instance or waiting for it to come online.
Starting memcached: memcached.
-----> Running migrations...
bundler: failed to load command: rake (/app/vendor/bundle/ruby/3.4.0/bin/rake)
/usr/local/lib/ruby/3.4.0/bundler/definition.rb:676:in 'Bundler::Definition#materialize': Could not find rb_sys-0.9.108, mini_portile2-2.8.8 in locally installed gems (Bundler::GemNotFound)
from /usr/local/lib/ruby/3.4.0/bundler/definition.rb:232:in 'Bundler::Definition#specs'
from /usr/local/lib/ruby/3.4.0/bundler/definition.rb:299:in 'Bundler::Definition#specs_for'
from /usr/local/lib/ruby/3.4.0/bundler/runtime.rb:18:in 'Bundler::Runtime#setup'
from /usr/local/lib/ruby/3.4.0/bundler.rb:167:in 'Bundler.setup'
from /usr/local/lib/ruby/3.4.0/bundler/setup.rb:32:in 'block in <top (required)>'
from /usr/local/lib/ruby/3.4.0/bundler/ui/shell.rb:173:in 'Bundler::UI::Shell#with_level'
from /usr/local/lib/ruby/3.4.0/bundler/ui/shell.rb:119:in 'Bundler::UI::Shell#silence'
from /usr/local/lib/ruby/3.4.0/bundler/setup.rb:32:in '<top (required)>'
from /usr/local/lib/ruby/3.4.0/bundler/cli/exec.rb:57:in 'Kernel#require_relative'
from /usr/local/lib/ruby/3.4.0/bundler/cli/exec.rb:57:in 'Bundler::CLI::Exec#kernel_load'
from /usr/local/lib/ruby/3.4.0/bundler/cli/exec.rb:23:in 'Bundler::CLI::Exec#run'
from /usr/local/lib/ruby/3.4.0/bundler/cli.rb:452:in 'Bundler::CLI#exec'
from /usr/local/lib/ruby/3.4.0/bundler/vendor/thor/lib/thor/command.rb:28:in 'Bundler::Thor::Command#run'
from /usr/local/lib/ruby/3.4.0/bundler/vendor/thor/lib/thor/invocation.rb:127:in 'Bundler::Thor::Invocation#invoke_command'
from /usr/local/lib/ruby/3.4.0/bundler/vendor/thor/lib/thor.rb:538:in 'Bundler::Thor.dispatch'
from /usr/local/lib/ruby/3.4.0/bundler/cli.rb:35:in 'Bundler::CLI.dispatch'
from /usr/local/lib/ruby/3.4.0/bundler/vendor/thor/lib/thor/base.rb:584:in 'Bundler::Thor::Base::ClassMethods#start'
from /usr/local/lib/ruby/3.4.0/bundler/cli.rb:29:in 'Bundler::CLI.start'
from /usr/local/lib/ruby/gems/3.4.0/gems/bundler-2.6.2/exe/bundle:28:in 'block in <top (required)>'
from /usr/local/lib/ruby/3.4.0/bundler/friendly_errors.rb:117:in 'Bundler.with_friendly_errors'
from /usr/local/lib/ruby/gems/3.4.0/gems/bundler-2.6.2/exe/bundle:20:in '<top (required)>'
from /usr/local/bundle/bin/bundle:25:in 'Kernel#load'
from /usr/local/bundle/bin/bundle:25:in '<main>'
```
### What is the expected behavior?
* the container should start and the build succeed with the test passing
### Environment information
**OpenProject installation type**
* Docker All-in-one container
**OpenProject version**
_v15.3.0 (release branch)_