|
所在平台: Udemy |
课程主页: https://www.udemy.com/course/jenkins-cicd-com-gitflow-no-kubernetes/
课程评论:没有评论
课程名称:Jenkins: CI/CD与Gitflow在Kubernetes上的应用 课程概述:本课程旨在帮助您了解多种DevOps工具如何协同工作,尤其是Jenkins、Gitflow和Kubernetes的集成。我们将构建一个强大的、完全基于Kubernetes的基础设施,利用尽可能多的技术,以帮助您理解它们之间的集成及其解决的问题。本课程假设您已具备Linux、Docker和Kubernetes的基础知识,专注于工具集成和CI/CD流水线的实现。 课程内容包括: 1. **环境设置**:本地使用Kind创建Kubernetes集群并配置环境。 2. **基础设施的Helm Charts**:自动化安装所有基础设施的Helm Charts以支持流水线运行。 3. **SCM设置**:配置服务用户并通过NGINX Ingress Controller公开TCP。 4. **CI设置**:安装Jenkins插件,使用Jenkinsfile,并通过Webhook实现Gitea与Jenkins的集成。 5. **测试**:介绍基础应用,并创建第一个测试阶段。 6. **共享库**:将流水线代码模块化为可重用的库。 7. **SonarQube**:使用Sonar Scanner/SonarQube进行静态代码分析。 8. **构建**:通过Kaniko在Kubernetes中构建Docker镜像,完全云原生,无需Docker in Docker。 9. **安全扫描**:通过Harbor API对Docker镜像进行安全分析。 10. **工件推广**:通过分支规则推广Docker镜像,降低构建时间,提高工件的可靠性。 11. **基础设施/集成测试**:进行简单的部署测试,可以根据业务需求扩展。 12. **部署**:通过ArgoCD在Kubernetes上进行部署,自动化创建生产环境的标签并在Discord中发送通知。 本课程100%实用,专注于项目从头到尾的开发。如果您认为这些知识对您有帮助,我将非常乐意在Udemy上成为您的讲师!请在课程期间随时向我提问。期待在课程中与您见面!
Deixa eu adivinhar.Você vem estudando diversas ferramentas do mundo DevOps mas tem aquele sensação de.Como que essas ferramentas devem trabalhar de forma conjunta?Pois é, é algo realmente complexo e que muda de negócio para negócio.Visando dar para vocês um norte, eu desenvolvi o treinamento Jenkins: CI/CD com Gitflow no Kubernetes para ser totalmente over-engineering. Isso é, vamos subir uma infraestrutura muito robusta, 100% em Kubernetes, usando o máximo de tecnologias possíveis para que você possa visualizar a integração entre elas, e quais problemas resolvem.Por isso é importante que você já conheça as seguintes ferramentas: Linux, Docker e Kubernetes.Neste curso, não passamos pelo básico delas. O foco é 100% em integrar as ferramentas na pipeline.Todo o curso é realizado localmente com Kind, por isso eu recomendo o seguinte setup:Uma máquina Linux, porque ela se dá melhor com o Docker.Pelo menos 16GB de RAM, afinal, ela vai hostear todas as ferramentas e execuções da pipeline.Porém, isso é apenas uma sugestão. O curso pode ser facilmente adaptável para rodar em homelabs (com Proxmox por exemplo), em nuvem (EKS, AKS, GKS, Digital Ocean, etc) ou como você quiser. Essa é a vantagem do Kubernetes, tudo é facilmente adaptável.Agora deixa eu te mostrar um pouco sobre a grade do treinamento:Módulo 1 - Introdução & Setup do ambiente: Criação do cluster Kubernetes 100% local usando Kind e ajustes para tudo correr bem.Módulo 2 - Helm Charts de infraestrutura: Automação e instalação de todos os Helm Charts de infraestrutura para nossa pipeline (tudo vai rodar em cima do Kubernetes).Módulo 3 - Setup do SCM: Setup de usuário de serviço e expondo TCP no NGINX Ingress Controller.Módulo 4 - Setup do CI: Instalação de plugins, uso do Jenkinsfile e integração via Webhook entre Gitea Jenkins.Módulo 5 - Testes: Introdução a aplicação que vamos usar como base (desenvolvida em outro curso aqui), e criação do primeiro stage de testes da aplicação.Módulo 6 - Shared Libraries: Modularizar o código da pipeline em bibliotecas reusáveis.Módulo 7 - SonarQube: Stage de análise de código estática usando o Sonar Scanner / SonarQube.Módulo 8 - Build: Build da imagem Docker no Kubernetes com Kaniko, 100% Cloud-Native e sem necessidade de Docker in Docker.Módulo 9 - Security Scan (Docker): Análise de segurança da imagem Docker via API do Harbor.Módulo 10 - Promoção de Artefatos: Promovendo imagens Docker com regras de branches ao invés de realizar outro build, reduzindo tempo da pipeline e consequentemente aumentando a confiabilidade no artefato.Módulo 11 - Testes de infraestrutura/integração: Teste simples deployando a aplicação e realizando um curl, mas que pode ser expandido para necessidades do negócio.Módulo 12 - Deploy: Deploy no Kubernetes via ArgoCD com princípio de GitOps, automatizando a criação de tags para ambiente produtivo e notificação no Discord.O curso é 100% prático e focado em desenvolver um projeto do começo ao fim.Então, se você acredita que esse conhecimento pode te ajudar, ficarei muito feliz em ser seu instrutor aqui na Udemy! Conte comigo ao longo do curso em caso de dúvidas.Te espero do outro lado!