Inspecionando o Jenkins com Docker

JenkinsBeginner
Pratique Agora

Introdução

Neste laboratório, você aprenderá a inspecionar como o Jenkins é executado dentro de um contêiner Docker no ambiente LabEx. O serviço Jenkins já está instalado, iniciado e disponível em http://localhost:8080, permitindo que você foque em entender o modelo de implementação do Docker em vez de aguardar por uma instalação do zero.

Você praticará como:

  • Verificar se o Docker está disponível no host.
  • Identificar o contêiner e a imagem do Jenkins em execução.
  • Inspecionar as portas publicadas utilizadas pelo Jenkins.
  • Localizar os dados do diretório home do Jenkins dentro do contêiner.
  • Ler os logs do contêiner e abrir a interface web do Jenkins.

Estas são habilidades práticas essenciais para operar o Jenkins em ambientes de desenvolvimento e treinamento baseados em Docker.

Inspecionar o ambiente Docker

Nesta etapa, você confirmará que o Docker está disponível e que o ambiente Jenkins está sendo executado sobre o Docker.

Abra um terminal na VM do LabEx e verifique a versão do Docker:

docker --version

Você deverá ver uma saída semelhante a esta:

Docker version ...

Em seguida, liste os contêineres em execução:

docker ps

Procure por um contêiner chamado jenkins. Este é o controlador Jenkins utilizado ao longo do laboratório. A saída contém várias colunas, mas os campos importantes são o nome da imagem, o mapeamento de portas e o nome do contêiner:

CONTAINER ID   IMAGE                    ...   PORTS                  NAMES
...            jenkins/jenkins:latest   ...   0.0.0.0:8080->8080/tcp jenkins

As informações cruciais são o nome do contêiner, a imagem e o mapeamento de portas. Você não precisa iniciar ou remover nenhum contêiner neste laboratório.

Inspecionar a imagem do Jenkins

Nesta etapa, você identificará a imagem Docker utilizada pelo contêiner Jenkins em execução.

Execute o seguinte comando:

docker inspect jenkins --format '{{.Config.Image}}'

Isso exibirá o nome da imagem usada para criar o contêiner. Neste ambiente, ele deve mostrar uma imagem do Jenkins:

jenkins/jenkins:latest

Você também pode listar as imagens locais:

docker images jenkins/jenkins

O ID exato da imagem e a data de criação podem variar, mas o repositório deve ser jenkins/jenkins:

REPOSITORY        TAG       IMAGE ID       CREATED       SIZE
jenkins/jenkins   latest    ...            ...           ...

Isso ajuda a conectar o serviço em execução no navegador com a imagem do contêiner que fornece o Jenkins.

Inspecionar portas e dados do Jenkins

Nesta etapa, você inspecionará as portas de rede e o diretório home do Jenkins utilizado pelo contêiner.

O Jenkins usa a porta 8080 para a interface web. Verifique as portas publicadas:

docker port jenkins

Você deverá ver a porta 8080 publicada no host, semelhante a isto:

8080/tcp -> 0.0.0.0:8080
8080/tcp -> :::8080

Agora, verifique o diretório home do Jenkins dentro do contêiner:

docker exec jenkins ls /var/jenkins_home

Você deverá ver dados do Jenkins, como jobs, plugins, logs ou arquivos de configuração:

config.xml
jobs
plugins
...

O Jenkins mantém sua configuração e dados de jobs em /var/jenkins_home, portanto, este diretório é o local principal para realizar backups ou inspeções durante a resolução de problemas.

Ler os logs do contêiner Jenkins

Nesta etapa, você lerá os logs do contêiner Jenkins. Os logs são frequentemente o primeiro lugar a verificar quando o Jenkins não inicia ou se comporta de maneira inesperada.

Execute:

docker logs --tail 30 jenkins

A saída deve incluir mensagens de inicialização ou de tempo de execução do Jenkins. Você poderá ver a versão do Jenkins, mensagens de plugins ou logs de inicialização do servidor HTTP.

As linhas exatas podem variar, mas o comando deve retornar os logs recentes do contêiner jenkins em execução.

Abrir a interface web do Jenkins

Nesta etapa, você conectará o contêiner Docker que inspecionou com a interface web do Jenkins.

Abra o navegador Firefox a partir da interface da área de trabalho. O navegador abrirá o Jenkins em:

http://localhost:8080

Nenhum login é necessário neste ambiente.

Você deverá ver o painel (dashboard) do Jenkins.

Painel do Jenkins

Isso confirma que o contêiner Docker jenkins está servindo a interface web do Jenkins através da porta 8080.

Resumo

Neste laboratório, você inspecionou uma implementação do Jenkins baseada em Docker.

Você praticou como:

  • Confirmar se o Docker está disponível.
  • Identificar o contêiner Jenkins em execução.
  • Inspecionar a imagem Docker do Jenkins.
  • Verificar a exposição da porta 8080.
  • Inspecionar o diretório /var/jenkins_home.
  • Ler os logs do contêiner Jenkins.
  • Abrir o painel web do Jenkins.

Essas habilidades ajudam você a entender e solucionar problemas em ambientes Jenkins baseados em Docker sem precisar reconstruir o controlador do zero.