SELinux flag :z blocks access to postgres service
A dockerized installation of cookiecutter-django on MXLinux 25.1 (a debian-derived distro)
- Docker version 29.5.2, build 79eb04c
- python3.14
- Docker Compose version v2.38.1-desktop.1
- Cookiecutter 2.6.0 from /usr/lib/python3/dist-packages (Python 3.13.5 (main, May 5 2026, 21:05:52) [GCC 14.2.0])
The default installation of the django service with docker-compose.local.yml (development environment) is:
django: build: context: . dockerfile: ./compose/production/django/Dockerfile image: my_awesome_project_local_django container_name: my_awesome_project_local_django depends_on: - postgres - mailpit volumes: - /app/.venv - .:/app:z <---- source of error env_file: - ./.envs/.local/.django - ./.envs/.local/.postgres ports: - '8000:8000' command: /start
Running docker compose gives this error:
my_awesome_project_local_postgres LOG: database system is ready to accept connections
my_awesome_project_local_django | wait-for-it: waiting 30 seconds for postgres:5432 my_awesome_project_local_django | wait-for-it: timeout occurred after waiting 30 seconds for postgres:5432 my_awesome_project_local_django exited with code 124.
Removing the :z flag corrects the error.
Amended code:
django: build: context: . dockerfile: ./compose/production/django/Dockerfile image: my_awesome_project_local_django container_name: my_awesome_project_local_django depends_on: - postgres - mailpit volumes: - /app/.venv - .:/app <--- amendment env_file: - ./.envs/.local/.django - ./.envs/.local/.postgres ports: - '8000:8000' command: /start
Source: cookiecutter/cookiecutter-django