Docker installation
Zammad può essere distribuito usando Docker Compose. Puoi anche usare interfacce grafiche Docker come Portainer.
INFO
Non forniamo supporto per problemi specifici relativi a Docker (-Compose) o Portainer.
Se si sceglie di eseguire Zammad tramite Docker, il supporto è fornito solo per l'applicazione Zammad.
Prerequisiti
Un ambiente Docker Compose funzionante
Almeno 4 GB di RAM per eseguire i container
Aumenta il limite di memoria per Elasticsearch su host Linux:
shsudo sysctl -w vm.max_map_count=262144
Distribuzione con Portainer
Il modo più semplice per avviare Zammad è tramite un'interfaccia grafica Docker. Consigliamo Portainer. Per le istruzioni di installazione, consultare la documentazione di Portainer.
Step 1: Add stack
Nell'interfaccia di Portainer (ad esempio https://yourdomain.tld:9443), scegli il tuo ambiente di destinazione, seleziona Stacks.

Step 2: Build from repository
Passa al metodo di build Repository e fornisci le informazioni seguenti:
- Nome: inserisci il nome desiderato dello stack
- URL repository:
https://github.com/zammad/zammad-docker-compose - Riferimento repository:
refs/heads/master - Percorso compose:
docker-compose.yml(predefinito)
Nel caso in cui l'ambiente predefinito non sia quello che stai cercando, puoi personalizzare lo stack utilizzando scenari predefiniti e regolando le variabili d'ambiente. Vai alla sezione di personalizzazione qui sotto per trovare maggiori informazioni.

Step 3: Deploy the stack
Infine, fai clic sul pulsante Deploy the stack. La prima volta, potrebbe volerci del tempo per scaricare le immagini Docker.
Una volta che lo stack è pronto, è possibile accedere a Zammad tramite l'host e la porta Docker configurati, ad esempio http://localhost:8080/.
Distribuzione con Docker Compose
Step 1: Clone the GitHub repo
sh
git clone https://github.com/zammad/zammad-docker-compose.gitAssicurati di eseguire git pull frequentemente per scaricare gli aggiornamenti. In alternativa, puoi scaricare i file dalla pagina delle release.
Step 2: Adjust environment as needed
Nel caso in cui l'ambiente predefinito non sia quello che stai cercando, puoi personalizzare lo stack utilizzando scenari predefiniti e regolando le variabili d'ambiente. Vai alla sezione di personalizzazione qui sotto per trovare maggiori informazioni.
Step 3: Start the stack
sh
cd zammad-docker-composesh
docker compose up -dOpzionale: utilizzare un file .yml aggiuntivo per utilizzare uno scenario predefinito. Per ulteriori informazioni, consultare la sezione Personalizzazione dello stack Zammad.
Una volta che lo stack è pronto, è possibile accedere a Zammad tramite l'host e la porta Docker configurati, ad esempio http://localhost:8080/.
Exposing the stack via HTTPS
Per pubblicare uno stack Zammad su Internet, è necessario proteggerlo tramite il protocollo HTTPS. Per farlo senza modificare lo stack Zammad, è possibile:
- Use a reverse proxy like Nginx Proxy Manager (NPM). It has a GUI that provides an easy Let's Encrypt integration.
- Usa un tunnel Cloudflare, che fornisce la terminazione SSL.
Entrambi gli scenari sono descritti nella pagina separata Scenari di Docker Compose.
Customizing the Zammad stack
Lo stack Zammad può essere personalizzato caricando file di scenario aggiuntivi per casi d'uso comuni.
Consulta la pagina degli scenari Docker Compose.
Per regolare lo stack e le impostazioni, utilizzare le variabili d'ambiente specifiche di Docker.
How to run commands in the stack
Esegui comandi nel tuo stack Docker chiamando rails o rake tramite uno dei seguenti metodi.
Directly execute a specific command:
sh
docker compose run --rm zammad-railsserver bundle exec rails r '...your rails command here...'Run the interactive Rails console to manually enter Rails commands:
sh
docker compose run --rm zammad-railsserver bundle exec rails cVia docker compose exec:
sh
docker compose exec zammad-railsserver bundle exec rails r '...your rails command here...'TIP
Se devi recuperare informazioni dal server Rails, puoi, ad esempio, inserire pp (pretty print) davanti al tuo comando Rails. Questo genera un output nel tuo terminale.