Esse container utiliza o Alpine Linux que é uma Distribuição Linux baseada em Musl e BusyBox, originalmente projetado para usuários avançados que apreciam segurança, simplicidade e eficiência no uso de recursos. O GLPI é uma ferramenta de software ITSM gratuita e de código aberto que ajuda você a planejar e gerenciar mudanças de TI de maneira fácil, facilita na resolução de problemas eficientemente.
• Alpine: https://pkgs.alpinelinux.org/packages
• GLPI: https://glpi-project.org/
Esta imagem considera essas variáveis como parâmetros:
Environment | Type | Usage |
---|---|---|
GLPI_REMOVE_INSTALLER | Boolean (yes/no) | Defina como sim se não for a primeira instalação do glpi |
GLPI_CHMOD_PATHS_FILES | Boolean (yes/no) | Defina como sim para aplicar chmod/chown em /var/www/files (útil para montagem de host) |
(deprecated) GLPI_PLUGINS | String | (será removido no 3.0) Lista separada por espaço de plugins para instalar (veja abaixo) |
GLPI_INSTALL_PLUGINS | String | Lista separada por vírgula de plugins para instalar (veja abaixo) < |
GLPI_ENABLE_CRONJOB | Boolean (yes/no) | Ative a execução interna do cron.php |
• A variável GLPI_INSTALL_PLUGINS deve conter a lista de plugins a serem instalados (download) antes de iniciar o glpi. Esta variável de ambiente é uma lista separada por vírgula de definições de plug-ins. Cada definição de plugin deve ser assim "PLUGINNAME | URL". O PLUGINNAME é o nome da primeira pasta no arquivo do plugin e será o nome do glpi do plugin. O URL é o URL completo para baixar o plug-in.
• Esta url pode conter algumas extensões de arquivo compactadas, em alguns casos o script do instalador não poderá extraí-la, assim você pode criar um problema especificando a extensão de arquivo não manipulada. Esses dois itens são separados por um símbolo de pipe.
• Para summurize, a variável GLPI_INSTALL_PLUGINS deve seguir o seguinte esqueleto GLPI_INSTALL_PLUGINS = "name1 | url1, name2 | url2" Para melhor exemplo, veja no final deste arquivo.
• Os volumes a seguir são expostos por esta imagem:
Volumes | Uso |
---|---|
/var/www/files | O caminho de dados do GLPI |
/var/www/config | O caminho de configuração do GLPI |
No Dockerfile contêm instâncias dos aplicativos da GLPI, Nginx e Php5-fpm exposto na porta 80.
Utilizaremos o no Travis no arquivo ".travis.yml" para iniciar o Docker quando criar um ambiente GLPI.
$ docker build -t luksjobs/glpi .
Na primeira vez que você executar essa imagem, defina a variável GLPI_REMOVE_INSTALLER como 'no' e, depois dessa primeira instalação, defina como 'yes' para remover o instalador.
Sem link de banco de dados (você pode usar um endereço IP ou um nome de domínio na interface gŕafica do instalador)
$ docker run --name glpi --publish 8000:80 --volume data-glpi:/var/www/files --volume data-glpi-config:/var/www/config luksjobs/glpi
$ docker run --name glpi --publish 8000:80 --volume data-glpi:/var/www/files --volume data-glpi-config:/var/www/config --link seubancodedados:mysql luksjobs/glpi
Configuração de produção com o GLPI já instalado com o Fusion Inventory e o plug-in do painel:
services:
glpi:
image: luksjobs/glpi
environment:
- GLPI_REMOVE_INSTALLER=yes
- 'GLPI_INSTALL_PLUGINS=fusioninventory|https://github.com/fusioninventory/fusioninventory-for-glpi/releases/download/glpi9.2%2B1.0/glpi-fusioninventory-9.2.1.0.tar.bz2'
ports:
- 80
volumes:
- data-glpi-files:/var/www/files
- data-glpi-config:/var/www/config
volumes:
data-glpi-files:
data-glpi-config: