Neste tutorial, você aprenderá a instalar e configurar o GLPI (versão 10.0.18) usando Docker e Docker Compose, seguindo as recomendações de segurança da Teclib. O GLPI é uma poderosa ferramenta de gerenciamento de ativos e help desk, e com contêineres, você pode implantá-lo de forma rápida, segura e consistente em qualquer ambiente.
Configurações de Segurança
Nesta versão do GLPI, foram aplicadas as recomendações de segurança da Teclib para garantir que o acesso ao diretório /var/www/html/glpi
seja restrito e seguro.
Pré-requisitos
Antes de começar, certifique-se de que você tem o seguinte instalado:
Docker Debian: Instalando o Docker no Debian
Docker Ubuntu: Instalando o Docker no Ubuntu
Baixar o Projeto
Você pode usar a imagem Docker do GLPI 10.0.18 que disponibilizei no Docker Hub ou clonar o repositório GitHub para personalizar o ambiente.
Usar a Imagem do Docker Hub
Imagem Docker Hub: rosnertech/glpi:10.0.18
Para puxar a imagem, execute:
docker pull rosnertech/glpi:10.0.18
Clonar o Repositório GitHub
Repositório GitHub: GLPI Docker
Para clonar o repositório, execute:
git clone https://github.com/seu-usuario/glpi-docker.git
cd glpi-docker
Configurar o Ambiente
No diretório do projeto, crie um arquivo docker-compose.yml
com o seguinte conteúdo:
version: '3.8'
services:
db:
image: mariadb:10.11
container_name: glpi-db
restart: always
environment:
MYSQL_ROOT_PASSWORD: ${DB_ROOT_PASSWORD}
MYSQL_DATABASE: ${DB_NAME}
MYSQL_USER: ${DB_USER}
MYSQL_PASSWORD: ${DB_PASSWORD}
volumes:
- db-data:/var/lib/mysql
networks:
- glpi-network
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-h", "localhost"]
interval: 10s
timeout: 5s
retries: 5
glpi:
image: rosnertech/glpi:10.0.18
container_name: glpi-app
restart: always
environment:
DB_HOST: db
DB_NAME: ${DB_NAME}
DB_USER: ${DB_USER}
DB_PASSWORD: ${DB_PASSWORD}
volumes:
- glpi-data:/var/www/html/glpi
ports:
- "8080:80"
depends_on:
db:
condition: service_healthy
networks:
- glpi-network
volumes:
db-data:
glpi-data:
networks:
glpi-network:
driver: bridge
Arquivo .env
Crie um arquivo .env
no mesmo diretório para armazenar as variáveis de ambiente:
# Variáveis de ambiente para o banco de dados
DB_ROOT_PASSWORD=root_password
DB_NAME=glpi
DB_USER=glpi_user
DB_PASSWORD=glpi_password
Iniciar os Contêineres
Execute o seguinte comando para iniciar os contêineres:
docker-compose up -d
Isso irá:
Baixar as imagens necessárias (MariaDB e GLPI).
Criar os volumes para persistência de dados.
Configurar a rede glpi-network
para comunicação entre os contêineres.
Iniciar o banco de dados e o GLPI.
Acessar o GLPI no Navegador
http://localhost:8080
Siga as etapas de instalação:
Selecione o idioma e clique em OK.
Na tela de verificação de requisitos, confirme que todos os itens estão marcados como OK e clique em Continuar.
Na configuração do banco de dados, insira os seguintes valores:
Servidor do banco de dados: db
Usuário do banco de dados: glpi_user
Senha do banco de dados: glpi_password
Nome do banco de dados: glpi
Clique em Continuar e conclua a instalação.
Excluir o Arquivo install.php
Após concluir a instalação via navegador, é importante excluir o arquivo install.php
por motivos de segurança. Execute o seguinte comando:
docker exec glpi-app rm -f /var/www/html/glpi/install/install.php
Para confirmar que o arquivo foi excluído, você pode verificar o conteúdo do diretório install
:
docker exec glpi-app ls -l /var/www/html/glpi/install
Se o arquivo install.php
não aparecer na listagem, ele foi removido com sucesso.
Primeiro Login
Após a instalação, você será redirecionado para a tela de login. Use um dos seguintes usuários padrão para acessar o sistema:
Por questões de segurança, recomenda-se que você altere as senhas padrão imediatamente após o primeiro acesso ao sistema. O uso de senhas padrão pode tornar seu ambiente vulnerável a acessos não autorizados.
Para maior proteção, escolha uma senha forte e única, combinando letras maiúsculas e minúsculas, números e caracteres especiais. Caso precise de ajuda para alterar a senha, consulte a documentação ou entre em contato com o suporte.
Gerenciar o Ambiente
Comandos Úteis
Ver logs do GLPI:
docker-compose logs -f glpi-app
Parar os contêineres:
docker-compose down
Reiniciar os contêineres:
docker-compose restart
Remover volumes e redes (use com cuidado):
docker-compose down --volumes --remove-orphans
Conclusão:
Agora você tem um ambiente completo do GLPI 10.0.18 rodando em contêineres Docker, com configurações de segurança reforçadas seguindo as recomendações da Teclib. Esse setup é ideal para testes, desenvolvimento ou até mesmo produção, graças à facilidade de gerenciamento e escalabilidade que o Docker oferece.
Links Úteis
Docker Hub: rosnertech/glpi:10.0.18
Repositório GitHub: GLPI Docker
Teclib: GLPI
Se tiver dúvidas ou precisar de ajuda, sinta-se à vontade para abrir uma issue no GitHub ou entrar em contato. Boa sorte com o GLPI! 🚀
Agradeço por ler esse artigo e espero vê-lo novamente em breve. Continue nos acompanhando para mais conteúdo relevante e inspirador. Até a próxima!
6 Responses so far.
Isso já resolve o problema de segurança do diretório? O arquivo “.env” é só a extensão mesmo ou tem algum nome? Já tenho a versão 10.1.1.17 instalada, posso fazer a atualização, se sim, como? Desculpe, ainda estou bastante n00b.
Olá Celso,
Fico muito feliz que tenha encontrado meu conteúdo e tirado um tempo para comentar! 😊
Não, esta versão ainda não trata o problema de segurança, pois eu estava apenas testando o ambiente. O problema foi corrigido na versão 10.0.18. O arquivo .env é utilizado para configurar as variáveis de senha, evitando que fiquem expostas no docker-compose, o que é uma boa prática.
Sim, você pode atualizar a versão, mas isso exige conhecimento avançado em GLPI. Será necessário realizar backup do banco de dados e dos arquivos do volume do Docker. Mesmo em instalações sem Docker, esses passos são indispensáveis antes da atualização.
No Docker, caso tenha utilizado docker-compose, será necessário renomear o volume glpi-data. Isso ocorre porque, ao iniciar um novo container, um novo volume será criado. Depois, será necessário restaurar os arquivos essenciais, como plugins, imagens e anexos dos chamados, conforme o procedimento padrão do GLPI.
Caso tenha dúvidas, pode me chamar pelo e-mail contato@rosnertech.com.br.
Outra coisa, o comando certo para remover o install.php é :
docker exec glpi-app rm -f /var/www/html/glpi/install/install.php
E o para verificar é:
docker exec glpi-app ls -l /var/www/html/glpi/install
Sem querer vc colocou o diretório “public”.
Além disso, sugiro colocar neste excelente tutorial que para ficar 100% seguro tem que trocar as senhas dos usuários padrão e como se atualiza o glpi sem perder dados.
Obrigado.
Olá Celso,
Obrigado por informar o erro, irei ajustá-lo. Sim, assim que possível, irei criar esse tutorial.
Continue acompanhando os próximos conteúdos!
Abraços
Rosner
Seu material é muito bom, inclusive estou usando sua imagem para meu glpi.
Você poderia ensinar como criar uma imagem.
Olá Rafael,
Que bom que gostou do conteúdo, fiquei feliz em saber que esta utilizando minha imagem. Irei me programar para criar um tutorial de de como criar uma imagem em Docker.
Continue acompanhando meu blog e se inscreva no meu canal no YouTube. Estou gravando novos conteúdos.
https://www.youtube.com/channel/UCik9XQ-ymobqhDOa9_aye-g
Abraços
Rosner