This guide uses Docker Compose to run Twenty CRM with its required services (PostgreSQL and Redis).
For Docker installation, see Docker.
cat <<'YAML' > docker-compose.yml
services:
postgres:
image: postgres:16-alpine
restart: unless-stopped
environment:
POSTGRES_DB: twenty
POSTGRES_USER: twenty
POSTGRES_PASSWORD: change-me
volumes:
- postgres_data:/var/lib/postgresql/data
redis:
image: redis:7-alpine
restart: unless-stopped
volumes:
- redis_data:/data
twenty:
image: twentycrm/twenty:latest
restart: unless-stopped
depends_on:
- postgres
- redis
ports:
- "3000:3000"
environment:
DATABASE_URL: postgres://twenty:change-me@postgres:5432/twenty
REDIS_URL: redis://redis:6379
SERVER_URL: http://localhost:3000
APP_SECRET: generate-random-secret-key
volumes:
- twenty_data:/app/docker-data
volumes:
postgres_data:
driver: local
redis_data:
driver: local
twenty_data:
driver: local
YAML
Before starting, generate a secure APP_SECRET:
openssl rand -base64 32
Replace generate-random-secret-key in the compose file with the output.
docker compose up -d
Open http://YOUR-SERVER:3000 and create your workspace.
twentycrm/twenty.Any questions?
Feel free to contact us. Find all contact information on our contact page.