Olá, bem-vindo ao curso de CI/CD, utilizando GitHub Actions e Docker. Meu nome é Danilo de Sousa Miguel, e serei seu instrutor durante todo o percurso deste curso.
Audiodescrição: Danilo é um homem negro, magro, com barba de média a longa, cabelo curto, e está usando uma camiseta cinza. Ele está sentado em uma cadeira preta com detalhes vermelhos. Atrás dele, há uma parede branca com luzes azuis e rosas.
Tenho mais de 10 anos de experiência como engenheiro de software, atuando no setor acadêmico e também no setor corporativo. Este curso é para quem deseja se aprofundar nos conceitos de entrega e integração contínua. Vamos explorar fundamentos de CI/CD e GitHub Actions, fundamentos de conteinerização utilizando Docker, Docker avançado, com Dockerfile, Docker Compose, publicação de imagens, implantação em serviços na nuvem, segurança em pipelines, CI/CD, versionamento e observabilidade de serviços. Nos vemos nos próximos vídeos. Até então!
Vamos começar a discutir integração contínua, implantação contínua e entrega contínua. Vamos abordar os conceitos de CI e CD. Observando a apresentação na tela, temos alguns conceitos e algumas das principais características da integração contínua.
Comecemos pela integração, o CI (integração contínua). Trata-se de uma prática de desenvolvimento de software, na qual os membros de uma equipe e todas as pessoas envolvidas, como engenheiros e engenheiras de software, integram seu trabalho com frequência, geralmente várias vezes ao dia. Cada integração é validada e verificada por meio de builds e testes automatizados, com o objetivo de identificar erros antecipadamente, evitando que cheguem à produção.
As principais características destacadas nas apresentações incluem commits frequentes, ou seja, validações dos ajustes com regularidade, execução automática de testes, o que leva à detecção precoce de erros, além de proporcionar um retorno rápido e de qualidade.
Passando agora para a próxima apresentação, temos a entrega contínua, ou continuous delivery. Trata-se da capacidade que uma ferramenta oferece a uma equipe, ou que a metodologia proporciona, de disponibilizar mudanças de todo tipo, incluindo novas funcionalidades, correções, depurações, experimentos e novas configurações, para produção, operação ou para os usuários finais, de maneira rápida, segura e com qualidade.
As principais características são a automatização do lançamento, a preparação constante do software, garantia de qualidade e a redução do tempo dessa integração, desse deploy (implantação), dessa disponibilização de uma nova versão do software para o usuário.
Passamos agora para o que é uma extensão do CD, que é a implantação contínua. Todas as mudanças que passaram por todas as etapas de uma sequência de passos, de testes, de análises, são implantadas automaticamente em produção, sem intervenção humana. Essa é a ideia.
As principais características incluem a automatização da implantação, implantação sem aprovação manual, ou seja, sem intervenção humana, monitoramento constante e capacidade de reversão.
Os benefícios de criar uma automatização assim, utilizando os conceitos de CI e CD, que acabamos de mencionar, são a redução de riscos, redução de custos durante o processo de desenvolvimento do software, detecção precoce de bugs (erros) e problemas, um retorno mais rápido sobre novas funcionalidades, maior confiabilidade nas entregas, proporcionando mais segurança à equipe, implantação mais frequente, pois o processo está automatizado, o que agiliza a implantação e reduz o tempo de lançamento de novas funcionalidades. Tudo isso é possível graças à automatização de todos os conceitos implementados.
Um pouco de conceito, e nos vemos nos próximos vídeos, trazendo mais conceitos e um pouco de prática também. Até a próxima!
Agora, vamos falar sobre as principais ferramentas de CI e CD existentes no mercado. Não temos apenas o GitHub Actions; há uma série de ferramentas amplamente utilizadas pelo público e pela comunidade em geral.
Começamos observando no navegador: temos o Jenkins. O Jenkins é uma ferramenta que já existe há algum tempo, sendo uma das mais antigas. Suas principais características incluem flexibilidade, personalização e uma série de plugins que permitem essa personalização. Ele oferece suporte para praticamente qualquer ambiente de desenvolvimento, possui uma comunidade ativa, com muitos artigos sendo publicados constantemente, e permite instalação autohospedada, entre outras funcionalidades.
Também temos o GitLab, que é uma ferramenta conhecida e bastante rápida. Ele oferece configuração, integração, execução paralela de testes, muitas funcionalidades, além de orquestração do fluxo de trabalho e do pipeline automático ou automatizado.
Além disso, temos o CircleCI, que vamos abrir no navegador agora. Esta ferramenta, que é muito conhecida, destaca-se pela velocidade, integração e execução paralela de testes.
Passamos agora para o Bitbucket, que também é uma ferramenta de controle de versões de código. Junto com o Bitbucket, temos o Bitbucket Pipelines, uma ferramenta integrada ao Bitbucket. A configuração é feita por meio de arquivos YAML, que são os arquivos que utilizaremos para criar nossos pipelines, a sequência de passos que automatizará nosso processo de entrega e integração contínua.
Temos também o GitHub Actions, que é o que utilizaremos neste curso. Vamos mostrar brevemente o GitHub Actions, que, embora seja uma ferramenta bastante conhecida, está integrada ao GitHub. O GitHub Actions possui um painel que mostra tudo o que foi executado, os erros, tudo bem organizado. É uma ferramenta bastante flexível, de código aberto, e conta com uma comunidade muito ativa.
Essas são as principais ferramentas. O curso terá um foco no GitHub Actions, e esperamos vocês nos próximos vídeos para falarmos mais sobre CI e CD.
O curso Integração Contínua com Docker e GitHub Actions: do build ao deploy em nuvem possui 337 minutos de vídeos, em um total de 103 atividades. Gostou? Conheça nossos outros cursos de Python em Programação, ou leia nossos artigos de Programação.
Matricule-se e comece a estudar com a gente hoje! Conheça outros tópicos abordados durante o curso:
O Plano Plus evoluiu: agora com Luri para impulsionar sua carreira com os melhores cursos e acesso à maior comunidade tech.
2 anos de Alura
Matricule-se no plano PLUS 24 e garanta:
Jornada de estudos progressiva que te guia desde os fundamentos até a atuação prática. Você acompanha sua evolução, entende os próximos passos e se aprofunda nos conteúdos com quem é referência no mercado.
Programação, Data Science, Front-end, DevOps, Mobile, Inovação & Gestão, UX & Design, Inteligência Artificial
Formações com mais de 1500 cursos atualizados e novos lançamentos semanais, em Programação, Inteligência Artificial, Front-end, UX & Design, Data Science, Mobile, DevOps e Inovação & Gestão.
A cada curso ou formação concluído, um novo certificado para turbinar seu currículo e LinkedIn.
Acesso à inteligência artificial da Alura.
No Discord, você participa de eventos exclusivos, pode tirar dúvidas em estudos colaborativos e ainda conta com mentorias em grupo com especialistas de diversas áreas.
Faça parte da maior comunidade Dev do país e crie conexões com mais de 120 mil pessoas no Discord.
Acesso ilimitado ao catálogo de Imersões da Alura para praticar conhecimentos em diferentes áreas.
Explore um universo de possibilidades na palma da sua mão. Baixe as aulas para assistir offline, onde e quando quiser.
Luri Vision chegou no Plano Pro: a IA da Alura que enxerga suas dúvidas, acelera seu aprendizado e conta também com o Alura Língua que prepara você para competir no mercado internacional.
2 anos de Alura
Todos os benefícios do PLUS 24 e mais vantagens exclusivas:
Chat, busca, exercícios abertos, revisão de aula, geração de legenda para certificado.
Envie imagens para a Luri e ela te ajuda a solucionar problemas, identificar erros, esclarecer gráficos, analisar design e muito mais.
Aprenda um novo idioma e expanda seus horizontes profissionais. Cursos de Inglês, Espanhol e Inglês para Devs, 100% focado em tecnologia.
Escolha os ebooks da Casa do Código, a editora da Alura, que apoiarão a sua jornada de aprendizado para sempre.
Para quem quer atingir seus objetivos mais rápido: Luri Vision ilimitado, vagas de emprego exclusivas e mentorias para acelerar cada etapa da jornada.
2 anos de Alura
Todos os benefícios do PRO 24 e mais vantagens exclusivas:
Catálogo de tecnologia para quem é da área de Marketing
Envie imagens para a Luri e ela te ajuda a solucionar problemas, identificar erros, esclarecer gráficos, analisar design e muito mais de forma ilimitada.
Escolha os ebooks da Casa do Código, a editora da Alura, que apoiarão a sua jornada de aprendizado para sempre.
Conecte-se ao mercado com mentoria individual personalizada, vagas exclusivas e networking estratégico que impulsionam sua carreira tech para o próximo nível.