Como Instalar o GLPI 11 no Docker: Guia Definitivo

Tutorial passo a passo para instalar o GLPI 11 com Docker Compose, incluindo MariaDB, proxy reverso, SSL e boas práticas de produção.

Docker é a forma mais rápida e segura de instalar o GLPI 11. Em menos de 10 minutos, você tem um ambiente completo rodando com MariaDB, volumes persistentes e pronto para produção.

Pré-requisitos

  • Servidor Linux (Debian 12, Ubuntu 22.04+ ou AlmaLinux 9)
  • Docker Engine 24+ e Docker Compose v2
  • Mínimo 2 GB de RAM e 20 GB de disco
  • Domínio apontando para o servidor (para SSL)

1. Estrutura de diretórios

Crie a estrutura para os volumes persistentes:

mkdir -p /opt/glpi/{data,config,plugins,marketplace}
mkdir -p /opt/glpi/db

Isso garante que dados do GLPI e do banco sobrevivam a recriações do container.

2. Docker Compose

Crie o arquivo docker-compose.yml:

version: "3.8"

services:
  glpi-db:
    image: mariadb:10.11
    container_name: glpi-db
    restart: unless-stopped
    environment:
      MARIADB_ROOT_PASSWORD: SuaSenhaForte123
      MARIADB_DATABASE: glpi
      MARIADB_USER: glpi
      MARIADB_PASSWORD: SuaSenhaGLPI456
    volumes:
      - /opt/glpi/db:/var/lib/mysql
    command: --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci

  glpi:
    image: glpi/glpi:11.0
    container_name: glpi-app
    restart: unless-stopped
    ports:
      - "8080:80"
    depends_on:
      - glpi-db
    volumes:
      - /opt/glpi/data:/var/lib/glpi
      - /opt/glpi/config:/etc/glpi
      - /opt/glpi/plugins:/var/www/glpi/plugins
      - /opt/glpi/marketplace:/var/www/glpi/marketplace
    environment:
      GLPI_DB_HOST: glpi-db
      GLPI_DB_NAME: glpi
      GLPI_DB_USER: glpi
      GLPI_DB_PASSWORD: SuaSenhaGLPI456

3. Iniciar os containers

docker compose up -d

Aguarde 30 segundos para o banco inicializar. Verifique os logs:

docker compose logs -f glpi

4. Instalação via console (recomendado)

Em vez de usar o wizard web, instale via CLI para automatização:

docker exec -it glpi-app php bin/console db:install \
  --db-host=glpi-db \
  --db-name=glpi \
  --db-user=glpi \
  --db-password=SuaSenhaGLPI456 \
  --default-language=pt_BR \
  --no-interaction

5. Remover arquivos de instalação

Por segurança, remova o script de instalação após concluir:

docker exec -it glpi-app rm -f /var/www/glpi/install/install.php

6. Proxy reverso com SSL

Em produção, nunca exponha o GLPI diretamente na porta 80. Use um proxy reverso (Nginx Proxy Manager, Traefik ou Nginx manual) com certificado SSL.

Exemplo com Nginx:

server {
    listen 443 ssl http2;
    server_name glpi.suaempresa.com;

    ssl_certificate /etc/ssl/certs/glpi.crt;
    ssl_certificate_key /etc/ssl/private/glpi.key;

    location / {
        proxy_pass http://127.0.0.1:8080;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

7. Primeiro acesso

Acesse https://glpi.suaempresa.com e faça login com as credenciais padrão:

  • Admin: glpi / glpi
  • Técnico: tech / tech
  • Normal: normal / normal

Importante: troque todas as senhas padrão imediatamente após o primeiro acesso.

8. Boas práticas para produção

  • Configure backup automático do volume /opt/glpi/db e /opt/glpi/data
  • Use variáveis de ambiente em arquivo .env (nunca hardcode senhas no compose)
  • Habilite o cron do GLPI: docker exec glpi-app crontab -l
  • Configure SMTP para notificações por email
  • Instale plugins via Marketplace (Configuração > Plugins)

Próximo passo

Com o GLPI rodando, configure SLA e OLA, crie seu catálogo de serviços e ative os módulos do NexTool para expandir as funcionalidades.

Perguntas Frequentes

Sim. A Teclib disponibiliza imagens oficiais no Docker Hub baseadas em AlmaLinux 9, com suporte a GLPI 10 e 11.

Sim. Docker é a forma recomendada para ambientes de produção: facilita atualizações, backups e reprodutibilidade. Use volumes persistentes e configure SSL via proxy reverso.

O GLPI 11 requer PHP 8.1 ou superior. A imagem Docker oficial já vem com a versão correta.

Não é obrigatório, mas é altamente recomendado. O Docker Compose permite definir GLPI + banco de dados em um único arquivo YAML reproduzível.

Precisa de ajuda?