Prévia do material em texto
Roteiro Aula Prática PROCESSOS ÁGEIS PARA O DESENVOLVIMENTO DE SOFTWARE ROTEIRO DE AULA PRÁTICA NOME DA DISCIPLINA: PROCESSOS ÁGEIS PARA O DESENVOLVIMENTO DE SOFTWARE OBJETIVOS Definição dos objetivos da aula prática: · Compreender os conceitos fundamentais de containers, Docker e Kubernetes. · Capacitar os alunos na instalação e utilização básica de Docker Containers. · Demonstrar a arquitetura e funcionamento do Kubernetes. · Explorar exemplos de replicação e padronização de containers. · Introduzir práticas de monitoramento de containers e sistemas virtualizados. INFRAESTRUTURA Instalações: Materiais de consumo: Descrição Quantid. de materiais por procedimento/atividade Computador 1 por aluno Software: Sim ( X ) Não ( ) Em caso afirmativo, qual? Pago ( ) Não Pago ( X ) Tipo de Licença: Freeware. Descrição do software: Docker - Plataforma de containerização; Docker Desktop (Windows/macOS) - Interface gráfica para Docker; Minikube - Ambiente Kubernetes local Kubectl - CLI para Kubernetes; Git - Sistema de controle de versão; Docker Hub - Repositório de imagens Docker; Terminal (CLI)- Linha de comando (CMD, PowerShell, Bash, etc.); 2 Navegador Web (Chrome, Firefox, Edge, etc.) - Ferramenta de acesso a aplicações web Editor de Código (VS Code, IntelliJ, Sublime, etc.) - Ambiente para criação de arquivos Dockerfile e index.html; Sistema Operacional (Windows, Linux, macOS) - Plataforma base para execução das ferramentas Equipamento de Proteção Individual (EPI): NSA. PROCEDIMENTOS PRÁTICOS Esta atividade prática tem como objetivo capacitar os alunos no uso de Docker e Kubernetes, desde a instalação e configuração até a execução e gerenciamento de containers e clusters. Os alunos aprenderão a criar e personalizar imagens Docker, armazená-las no Docker Hub e utilizar o Minikube para simular um ambiente Kubernetes local. Atividade proposta: Os alunos deverão instalar, configurar e executar um ambiente de containers utilizando Docker e, posteriormente, criar um cluster Kubernetes simples para demonstrar a orquestração de containers. Etapas da Atividade: 1. Instalar e configurar o Docker no ambiente de desenvolvimento. 2. Executar um container simples (exemplo: Nginx ou Apache) e acessar via navegador. 3. Criar uma imagem personalizada no Docker e armazená-la no Docker Hub. 4. Instalar e configurar o Minikube para rodar um cluster Kubernetes local. 5. Criar e gerenciar pods no Kubernetes, verificando replicação e escalabilidade. Procedimentos para a realização da atividade: 1) Instalação do Docker e Verificação · Baixar e instalar o Docker no sistema operacional do aluno. · Testar a instalação executando · Explicar conceitos como imagens, containers e volumes. 2)Execução de um Container Web · Baixar e rodar um container do Nginx ou Apache: · Acessar no navegador via http://localhost:8080. · Parar e remover o container após a verificação. 3) Criação e Publicação de uma Imagem Personalizada · Criar um Dockerfile para um servidor simples com Node.js ou Python. · Construir e rodar a imagem localmente: Fazer login e publicar a imagem no Docker Hub. 4) Instalação do Kubernetes (Minikube) e Configuração Inicial · Instalar Minikube e Kubectl. · Iniciar o cluster localmente: Criar um Pod rodando o Nginx: 5) Escalabilidade e Monitoramento · Criar um Deployment e escalar réplicas Monitorar os pods e visualizar logs: Demonstrar o arquivo deployment.yaml Checklist: · Docker instalado e testado · Container de Nginx ou Apache executado e acessível · Imagem personalizada criada e publicada no Docker Hub · Minikube instalado e funcionando · Kubernetes rodando com pelo menos 3 réplicas de um pod · Comandos básicos de monitoramento executados RESULTADOS Resultados da aula prática: Elaborar um Relatório Os alunos deverão elaborar um ÚNICO relatório técnico contendo as seguintes seções: 1. Introdução · Objetivo da atividade. · Importância do uso de containers e Kubernetes no desenvolvimento moderno. 2. Procedimentos Realizados · Instalação e configuração do Docker (detalhando o sistema operacional e comandos utilizados). · Execução de um container Nginx ou Apache, incluindo os passos para acessá- lo via navegador. · Criação de uma imagem personalizada no Docker, explicando os arquivos utilizados (Dockerfile, scripts, etc.). · Publicação da imagem no Docker Hub, com captura de tela do repositório. · Instalação e configuração do Minikube, apresentando os comandos utilizados. · Criação e gerenciamento de pods no Kubernetes, incluindo comandos para escalabilidade e replicação. 3. Resultados Obtidos · Prints de tela ou logs dos containers em execução. · Capturas de tela do navegador acessando o container. · Comprovante da imagem publicada no Docker Hub. · Saída dos comandos kubectl get pods e kubectl get deployments. 4. Dificuldades e Soluções · Quais desafios foram encontrados na execução dos procedimentos? · Como foram resolvidos? 5. Conclusão · O que foi aprendido com a atividade? · Como os conceitos abordados podem ser aplicados em projetos reais? image3.png image4.png image5.png image6.png image7.png image8.png image9.png image1.png image2.png