Dia 23: Jenkins Freestyle Project for DevOps Engineers

Se você já quis automatizar a construção, teste e implantação de seus aplicativos, este é o seu playground. O que é CI/CD? CI (integração contínua): integra automaticamente as alterações de código em um repositório compartilhado e executa construções/testes para capturar bugs mais cedo. CD (entrega contínua): garante que o código esteja sempre em um estado pronto para liberação, com implantações automatizadas para estadiamento ou produção. Juntos, o CI/CD mantém o desenvolvimento rápido, confiável e eficiente. O que é um trabalho de construção? Em Jenkins, um trabalho de construção é um conjunto de instruções para automatizar tarefas – desde o código de compilação, teste e embalagem até a implantá -lo em qualquer lugar. O que é um projeto de estilo livre? Um projeto de estilo livre em Jenkins é a maneira mais amigável para iniciantes para: Código de teste e teste Run Docker Comandos Implantam Applications Chair Faça um novo projeto de estilo livre em Jenkins. Adicione uma etapa de construção para: Execute o Docker Build para criar sua imagem. Execute o Docker Run para iniciar seu contêiner. Tarefa 2 Crie um projeto Jenkins a ser executado: este é um passo prático para dominar a automação CI/CD com Jenkins e Docker. Pré -requisito (Faça uma vez) Confirme Jenkins está aberto: Desbloqueie com a senha de: sudo cat/var/lib/jenkins/secrets/InitialAdmIrpassword crie usuário administrador → “Instale plugins sugeridos” Dê Jenkins Acesso a Docker # On The Machines Runs Runs Sudo -Sudoter Jenkins Jenkins Jenkins Jenkins Jenkins Jenkins Jenkins Jenkins SUSUSTER JENKINS JENKINS JENKINS JENKINS JENKINS JENKINS JENKINS JENKins Fale com o Docker Sudo -u Jenkins -h sh -c ‘Docker Version && Docker ps sudo apt-get install -y docker-compose-plugin Digite o modo de tela cheia de tela cheia de tela cheia Criar/preparar um agente (nó) Você pode usar o nó interno se Jenkins e Docker estiverem na mesma máquina: Jenkins → Gerencie Jenkins → Nodos → Node → Configuração de node → Configuração (eg) (acert) Host Docker, adicione -o como um agente SSH com o Docker de etiqueta e verifique se o Docker está instalado lá.) Tarefa 1: Trabalho de estilo livre para construir e executar o contêiner A. Prepare o seu repositório seu aplicativo repo deve ter um DockerFile na raiz. Exemplo: My-App/ ├─ Dockerfile ├─ SRC/ … └─ … Digite o modo de saída da tela cheia de tela cheia B. Crie o trabalho Jenkins → Novo item → Projeto Freestyle → Nome de Appu-Build Run → Git → Geral: Verifique se este projeto Cronograma: H * * * * (uma vez a cada hora, bem disperso) Build → Adicionar etapa de construção → Executar pasta de shell: set -e App_name = “MyApp” image = “$ {App_name}: $ {Build_number}” Port = 8080 # Alterar se o seu aplicativo usar uma porta diferente Echo “[INFO] Imagem de construção $ {Image} “Docker Build -t” $ {image} “. Echo”[INFO] Parando o contêiner anterior (se houver) “Docker rm -f” $ {App_name} “2>/dev/null || true echo”[INFO] Executando o novo contêiner “Docker Run -d – -name” $ {App_name} “-p $ {porta}: $ {Port}” $ {imagem} “Echo”[INFO] Status do contêiner: “Docker ps -filtro” nome = $ {App_name} “Digite o modo de tela cheia de tela cheia Salvar → Construir agora teste o aplicativo em (ou sua porta mapeada). Dica: se o seu aplicativo escuta um trabalho de freestyle para executar o mapa de acordo com o Docker (EG, -P 8000: 8000). Docker -Compose.yml. Projeto → Nome It Compõe-Up → OK restringe onde este projeto pode ser executado → Rótulo: Docker Código-fonte Gerenciamento → Git → Seu URL de repo Gatilhos (opcional) → Construa periodicamente (por exemplo, h/30 * * * * para executar todos os ~ 30 minutos) Build → Adicionar etapa de construção → Exceção se você possui dock compospo[INFO] Pull/Build & Start no modo isolado “Docker Compose -f” $ {FILE} “UP -D – -Build Echo”[INFO] Pilha atual: “Docker compõe -f” $ {file} “ps entre no modo de tela cheia de tela cheia se o seu sistema tiver apenas o binário antigo: docker-compose -f docker-compose.yml up -o modo de limpeza de limpeza de limpeza de popa de limpeza de limpeza de pica de linha full em renda de reta -de -renda. Build Fails) ** Set -e File = “Docker-Compose.yml” Cleanup () {Echo “[CLEANUP] Bringing stack down” docker compose -f “${FILE}” down –volumes –remove-orphans } trap cleanup EXIT docker compose -f “${FILE}” up -d –build docker compose -f “${FILE}” ps # Put your tests here if any; cleanup will still run on EXIT Enter fullscreen mode Exit fullscreen mode If you want the stack to stay up Para testes manuais e limpo apenas em trabalhos dedicados, pule aqui e adicione um trabalho de estilo livre separado chamado composição com: Docker Compose -f Docker-Composese.yml Down-Volumes-Remove-Orphans Digite a tela cheia SUSTENS MODE DE ESCRANÇA zanshem → Systems → Systems → Systems → Systems → Com a chave privada, referente -o nas configurações do GIT do trabalho.[VERIFY] APECTAMENTO DE ENDERGO DE HEALTE “CURL -FSS || (App” eco “que não está respondendo” && Exit 1) Digite o modo de saída de tela cheia de tela cheia, que é isso! Execute os dois trabalhos, verifique a saída do console para confirmar cada estágio e terminar.

Fonte

Publicar comentário

Você pode ter perdido