The easiest, most robust way to run Redmine 7 (with PostgreSQL) on macOS using Docker is via Docker Compose.
- Install Docker Desktop for Mac
- Create a Project Directory
- Create the docker-compose.yml File
- Start the Containers
- Access Redmine 7
- Useful Maintenance Commands
Install Docker Desktop for Mac
Make sure you have Docker Desktop installed and running on your Mac (supports Apple Silicon M1/M2/M3/M4 and Intel processors natively).
Create a Project Directory
Open your terminal and create a dedicated folder for your Redmine setup:
mkdir redmine-docker cd redmine-docker
Create the docker-compose.yml File
Create a file named docker-compose.yml inside that directory using your favorite text editor (e.g., nano docker-compose.yml):
services:
postgres:
image: postgres:16-alpine
container_name: redmine_postgres
restart: always
environment:
POSTGRES_DB: redmine
POSTGRES_USER: redmine
POSTGRES_PASSWORD: your_secure_password
volumes:
- pg_data:/var/lib/postgresql/data
networks:
- redmine-net
redmine:
image: redmine:7.0
container_name: redmine_app
restart: always
ports:
- "8080:3000"
environment:
REDMINE_DB_POSTGRES: postgres
REDMINE_DB_USERNAME: redmine
REDMINE_DB_PASSWORD: your_secure_password
REDMINE_DB_DATABASE: redmine
volumes:
- redmine_data:/usr/src/redmine/files
- redmine_plugins:/usr/src/redmine/plugins
depends_on:
- postgres
networks:
- redmine-net
volumes:
pg_data:
redmine_data:
redmine_plugins:
networks:
redmine-net:
driver: bridge
Note: redmine:7.0 targets the Redmine 7 series. You can also specify an exact patch version like redmine:7.0.2 if needed.
Start the Containers
Run the following command in your terminal within the redmine-docker folder to start the application in the background:
docker compose up -d
Docker will pull the PostgreSQL and Redmine 7 images, build the necessary network volumes, and initialize the database schema automatically.
Access Redmine 7
1. Wait a minute or two for the database migrations to finish on the initial launch. You can check the logs using:
docker compose logs -f redmine
2. Once you see messages indicating the server has booted up, open your browser and navigate to:
http://localhost:8080
3. Log in with the default administrator credentials:
- Username: admin
- Password: admin
You will be immediately prompted to change your password upon your first login.
Useful Maintenance Commands
- Stop containers: docker compose down
- View logs: docker compose logs -f
- Update to newer patch versions: Update the tag in docker-compose.yml (e.g., to a newer 7.0.x release), then run docker compose pull && docker compose up -d