janela de Encaixe como sabemos,é uma plataforma aberta para os desenvolvedores e administradores do sistema para construir, o navio, e de execução de aplicações distribuídas, seja em notebooks, centro de dados VMs, ou na nuvem.
hoje vamos verificar como configurar Jenkins para construir imagens do Docker com base em um Dockerfile. Abaixo estão os passos de como você pode usar o Docker dentro de um pipeline CI/CD, usando imagens como um artefato de construção que pode ser promovido a diferentes ambientes e, finalmente, produção.
Passo # 1 : Lance Jenkins
atualmente tenho Jenkins rodando no container Docker, se você fizer o comando docker ps
ele mostraria o estado do container.
Lançamento Jenkins’ painel de controlo
Etapa 2 : Configurar os plugins e iniciar a construção de Encaixe Imagens.O nosso primeiro passo é configurar o ‘plugin’ do Docker. Sempre que uma construção Jenkins requer um acoplador, ele irá criar um “agente de nuvem” através do plugin. O agente será um Container do Docker configurado para falar com o nosso Doemon do Docker.O trabalho de construção Jenkins usará este container para executar a construção e criar a imagem antes de ser parado. A imagem do ‘Docker’ será guardada no servidor do ‘Docker’ configurado. A imagem pode então ser empurrada para um registro de Docker pronto para a implantação.
- uma vez que você está dentro do Painel Jenkins, selecione Manage Jenkins à esquerda.
- na página de configuração, seleccione Gerir os ‘Plugins’.
- gerir a página de ‘Plugins’ dar-lhe-á uma interface com páginas. Clique disponível para ver todos os plugins Jenkins que podem ser instalados.
- usando o campo de pesquisa, procurar por ‘plugin’ do acoplador. Existem vários ‘plugins’ do acoplador, seleccione o ‘plugin’ do acoplador com a opção.
- Enquanto nesta página, instale o Git plugin para obter o código-fonte a partir de um repositório Git.
- Clique em Instalação sem Reiniciar na parte inferior.
- os plugins serão agora transferidos e instalados. Uma vez concluído, clique no link Voltar para a página superior.
uma vez que o acoplador & plugins GIT foram instalados, agora podemos ir em frente e configurar como eles lançam os recipientes Docker.
Produtos da Amazon.no
- -17%
- Dominar a janela de Encaixe –
- Preço: INR 828.00
- Foi: INR 999.00
- -17%
- Entrega Contínua, com janela de Encaixe e Jenkins
- Preço: INR 829.00
- Foi: INR 999.00
- janela de Encaixe e Kubernetes para Desenvolvedores de Java
- Preço: INR 828.00
- janela de Encaixe no Windows
- Preço: INR 828.00
- janela de Encaixe e de Transporte Confiável de Recipientes na Produção
- Preço: Fora de estoque
- janela de Encaixe : Um Início Rápido Guia do Iniciante
- Preço: Verificar no Amazon
- janela de Encaixe Profundo Mergulho
- Preço: Verificar no Amazon
- janela de Encaixe: 5 Livros em 1 – guia do Iniciante+ Dicas & Truques+ Simples & estratégias Eficazes+ Melhores Práticas & estratégias Avançadas
- Preço: Verificar no Amazon
- Ry Git do Tutorial
- Preço: Verifique na Amazon
” “
A configuração seria usada pelo plugin de janela de Encaixe Imagem para usar o agente e que a janela de Encaixe daemon para executar os recipientes e se constrói.O plugin trata o Docker como um provedor de nuvem, rodando os contêineres como e quando a construção Os requer.
Step # 3: Configure Docker agent
- On the Jenkins Dashboard, select Manage Jenkins.
- Seleccione o sistema de configuração para aceder às principais opções Jenkins.
- no fundo, há uma queda chamada Adicionar uma nova nuvem. Seleccione o acoplador na lista.
- agora Você pode configurar o recipiente de opções. Defina o nome do agente para docker-agent.
- A “janela de Encaixe URL” é onde Jenkins lança o agente recipiente. Neste caso, vamos usar o mesmo daemon que running Jenkins, mas no cenário do mundo real deve ser uma instância separada para que possa escalar.
- Use a conexão de teste para verificar que Jenkins pode falar com o servidor do Docker. Você deve ver o número da versão Docker retornado.
now plugin can communicate with Docker, next step would be to configure how to launch the Docker Image for the agent.
- usando a lista de imagens, seleccione Adicionar a lista de modelos do ‘Docker’.
- para a imagem do Docker, use a amostra uma que tenha o Cliente do Docker benhall / dind-jenkins-agent. Esta imagem é configurada com um Cliente do acoplador e está disponível em https://hub.docker.com/r/benhall/dind-jenkins-agent/
- para permitir que as compilações especifiquem o acoplador como um agente de compilação, defina uma legenda do acoplador-agente.
- Jenkins usa a SSH para comunicar com agentes. Adicione um novo conjunto de “credenciais”. O nome de Utilizador é jenkins e a senha é jenkins.Finalmente, expanda a secção de configuração do contentor, carregando no botão. No campo de texto” Volumes”, inserir /var/run/docker.sock: / var/run / docker.sock
- Carregue em Gravar.
Step #4 : Test The setup
To test the setup create new job to
- On the Jenkins dashboard, select Create new jobs of type Freestyle project & create new job ex.Jenkins Demo.
- A compilação dependerá de ter acesso à janela de Encaixe. Usando o “Restrict where this project can be run” podemos definir o rótulo que definimos do nosso agente de Docker configurado. O set “Label Expression” para docker-agent. Você deve ter uma configuração de”Label é atendido por nenhum nós e 1 Nuvem”.
- selecione o tipo de repositório como Git e defina o repositório.Estou a usar a minha localização git https://github.com/karthi4india/jenkins/.
- podemos agora adicionar um novo passo de compilação usando a lista. Seleccione Executar A Linha De Comandos.
- Dockerfile cuida de construir, Jenkins só precisa chamar criar e especificar um nome amigável.
fase de construção :
ls
docker info
docker build -t jenkins-demo:${BUILD_NUMBER} .
docker tag jenkins-demo:${BUILD_NUMBER} jenkins-demo:latest
docker images
o primeiro comando lista todos os arquivos no diretório que serão construídos. Ao ligar para o docker build, usamos o número Jenkins como marca de imagem. Isso nos permite a versão de nossas imagens do Docker. Também marcamos a compilação com o mais recente.
ficheiro Docker:
FROM scratch
EXPOSE 80
COPY http-server /
CMD
do lado esquerdo, seleccione compilar agora. Deverá ver uma compilação agendada com uma mensagem “(pendente — espera pelo próximo executor disponível)”.
Jenkins está lançando o container e conectando-se a ele via SSH. Às vezes isto pode demorar um momento ou dois.
Você pode ver o progresso
docker logs --tail=10 jenkins
uma Vez que a compilação estiver concluída, você deve ver a Imagem e Tags usando a janela de Encaixe CLI
docker images
Como este post? Não te esqueças de o partilhar!