Installazione Docker

Installare OpenProject con Docker è il modo più rapido per avere un’istanza funzionante, ideale per sviluppo, test, o produzione con orchestrazione. L’immagine ufficiale openproject/community è mantenuta dal team.

Prerequisiti

  • Docker Engine 20.10+
  • Docker Compose v2 (plugin) oppure docker-compose legacy
  • Minimo 4 GB RAM liberi per il container OpenProject + 1 GB per PostgreSQL
  • 10 GB di storage per l’immagine e i dati base

docker-compose.yml

version: "3.8"

services:
  db:
    image: postgres:16
    environment:
      POSTGRES_USER: openproject
      POSTGRES_PASSWORD: openproject-db-pass
      POSTGRES_DB: openproject
    volumes:
      - pgdata:/var/lib/postgresql/data
    restart: unless-stopped

  web:
    image: openproject/community:15
    depends_on:
      - db
    environment:
      DATABASE_URL: postgresql://openproject:openproject-db-pass@db:5432/openproject
      OPENPROJECT_SECRET_KEY_BASE: cambia-con-una-stringa-random-sicura
      OPENPROJECT_HOST__NAME: openproject.tuodominio.it
      OPENPROJECT_HTTPS: "true"
      # SMTP (opzionale)
      EMAIL_DELIVERY_METHOD: smtp
      SMTP_ADDRESS: smtp.tuodominio.it
      SMTP_PORT: "587"
      SMTP_DOMAIN: tuodominio.it
      SMTP_AUTHENTICATION: login
      SMTP_USER_NAME: openproject@tuodominio.it
      SMTP_PASSWORD: "password-smtp"
      SMTP_ENABLE_STARTTLS_AUTO: "true"
    ports:
      - "8080:80"
    volumes:
      - opdata:/var/openproject/assets
    restart: unless-stopped

volumes:
  pgdata:
  opdata:

Avvio

# Crea file docker-compose.yml
nano docker-compose.yml

# Avvia i container
docker compose up -d

# Verifica
docker compose ps
docker compose logs -f web

# Apri il browser su http://localhost:8080

Configurazione SMTP

Per ricevere notifiche email, configura le variabili SMTP_* mostrate sopra. Per Gmail o servizi con OAuth2, è richiesta una app password. Per test, puoi usare Mailpit o Mailtrap.

Backup e ripristino

OpenProject include comandi di backup integrati:

# Backup completo
docker compose exec web openproject run backup

# I backup sono in /var/openproject/files/backups/
docker compose cp web:/var/openproject/files/backups ./backups

# Ripristino
docker compose cp ./backups/backup-2026-06-10.tar.gz web:/tmp/
docker compose exec web openproject run restore /tmp/backup-2026-06-10.tar.gz

Aggiornamento

# Scarica nuova immagine
docker compose pull web

# Riavvia (i dati sono in volumi persistenti)
docker compose up -d

# Esegui migrazioni (automatico al boot)
docker compose logs -f web

⚠️ Volumi persistenti: pgdata e opdata contengono TUTTI i dati. Non cancellarli mai. Fai backup regolari del filesystem del host Docker.

Docker Hub: openproject/community · Doc: Docker installation

Torna in alto