Instalação via Docker
O Zammad pode ser implantado usando o Docker Compose. Você pode até usar interfaces gráficas do Docker, como o Portainer.
INFO
Não fornecemos suporte para problemas específicos do Docker (Compose) ou Portainer. Se você optar por executar o Zammad via Docker, o suporte é fornecido apenas para a aplicação Zammad.
Pré-requisitos
Certifique-se de que sua configuração do Docker Compose atenda aos requisitos que você encontra no README do repositório Docker Compose do Zammad.
Certifique-se de ter pelo menos 4 GB de RAM para executar os containers.
Ajuste as configurações do seu host para executar o Elasticsearch corretamente:
shsudo sysctl -w vm.max_map_count=262144
Implantação com Docker Compose
Etapa 1: clonar o repositório do GitHub
git clone https://github.com/zammad/zammad-docker-compose.gitCertifique-se de executar git pull frequentemente para buscar atualizações. Como alternativa, você pode baixar os arquivos da página de releases.
Etapa 2: ajustar o ambiente conforme necessário
Caso nosso ambiente padrão não seja o que você procura, você pode personalizar a stack usando cenários predefinidos e ajustar variáveis de ambiente. Vá até a seção de personalização abaixo para mais informações.
Etapa 3: iniciar a stack
cd zammad-docker-composedocker compose up -dOpcional: use um arquivo .yml adicional para usar um cenário predefinido. Continue lendo na seção Personalizando a stack do Zammad.
Depois que a stack estiver pronta, você pode acessar o Zammad pelo host e porta Docker configurados, por exemplo, http://localhost:8080/.
Implantação com Portainer
A forma mais fácil de colocar o Zammad em execução é via uma interface gráfica do Docker. Recomendamos o Portainer. Para instruções de instalação, consulte a documentação do Portainer.
Etapa 1: adicionar stack
Na interface gráfica do Portainer (por exemplo, https://yourdomain.tld:9443), escolha seu ambiente de destino, selecione Stacks e clique em Add stack, como você pode ver na captura de tela abaixo.

Etapa 2: construir a partir do repositório
Mude para o método de build Repository e forneça as informações abaixo:
- Name: informe um nome desejado para a stack
- Repository URL:
https://github.com/zammad/zammad-docker-compose - Repository reference:
refs/heads/master - Compose path:
docker-compose.yml(padrão)
Caso nosso ambiente padrão não seja o que você procura, você pode personalizar a stack usando cenários predefinidos e ajustar variáveis de ambiente. Vá até a seção de personalização abaixo para mais informações.

Etapa 3: implantar a stack
Por fim, clique no botão Deploy the stack. Na primeira vez, pode levar algum tempo até que as imagens do Docker sejam baixadas.
Depois que a stack estiver pronta, você pode acessar o Zammad pelo host e porta Docker configurados, por exemplo, http://localhost:8080/.
Expondo a stack via HTTPS
Para publicar uma stack do Zammad na internet, ela precisa ser protegida via protocolo HTTPS. Para conseguir isso sem modificar a stack do Zammad, você pode:
- Usar um proxy reverso como o Nginx Proxy Manager (NPM). Ele tem uma interface gráfica que oferece uma integração fácil com o Let's Encrypt.
- Usar um túnel do Cloudflare, que oferece terminação SSL.
Ambos os cenários são cobertos na página separada Cenários do Docker Compose.
Personalizando a stack do Zammad
A stack Docker Compose do Zammad está pronta para rodar com as configurações padrão. Você pode adaptá-la ao seu ambiente carregando arquivos de cenário predefinidos, ajustando variáveis de ambiente e adicionando arquivos específicos da sua instância.
Veja a página de cenários do Docker Compose para os casos de uso suportados e instruções detalhadas sobre como carregar arquivos de cenário. Para alterar configurações individuais, use as variáveis de ambiente específicas do Docker.
Se você implantou a stack com Docker Compose clonando o repositório, use o diretório local/ dele para os arquivos que pertencem apenas à sua instância. Veja a seção personalizar a stack localmente para detalhes.
Como executar comandos na stack
Execute comandos na sua stack do Docker chamando rails ou rake por um dos seguintes métodos, usando bundle exec.
Execute diretamente um comando específico:
docker compose run --rm zammad-railsserver bundle exec rails r '...seu comando rails aqui...'Execute o console interativo do Rails para inserir comandos Rails manualmente:
docker compose run --rm zammad-railsserver bundle exec rails cVia docker compose exec:
docker compose exec zammad-railsserver bundle exec rails r '...seu comando rails aqui...'TIP
Se você precisar recuperar informações do servidor Rails, você pode, por exemplo, colocar pp (pretty print) antes do seu comando Rails. Isso resulta em uma saída no seu terminal.