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, tem um ambiente completo a correr 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 a apontar 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

Isto garante que os dados do GLPI e da base de dados sobrevivam a recriações do container.

2. Docker Compose

Crie o ficheiro 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 a base de dados inicializar. Verifique os logs:

docker compose logs -f glpi

4. Instalação via consola (recomendado)

Em vez de utilizar o assistente web, instale via CLI para automaçã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 ficheiros 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. Utilize 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

Aceda a https://glpi.suaempresa.com e inicie sessão com as credenciais predefinidas:

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

Importante: altere todas as palavras-passe predefinidas imediatamente após o primeiro acesso.

8. Boas práticas para produção

  • Configure cópia de segurança automática do volume /opt/glpi/db e /opt/glpi/data
  • Use variáveis de ambiente num ficheiro .env (nunca coloque palavras-passe no compose)
  • Ative 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 a correr, configure SLA e OLA, crie o 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 para GLPI 10 e 11.

Sim. Docker é a forma recomendada para ambientes de produção: facilita atualizações, cópias de segurança 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á inclui a versão correta.

Não é obrigatório, mas é altamente recomendado. O Docker Compose permite definir GLPI + base de dados num único ficheiro YAML reproduzível.

Precisa de ajuda?