Compartilhamento de tecnologia

GitLab CI/CD realiza implantação automatizada de projetos

2024-07-11

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

1 Introdução ao CI/CD do GitLab

  • GitLab CI/CD é um conjunto de ferramentas de integração contínua (Integração Contínua), entrega contínua (Entrega Contínua) e implantação contínua (Implantação Contínua) integradas no GitLab para desenvolvimento de software. Este sistema permite que as equipes de desenvolvimento automatizem o processo de entrega de software, desde a detecção, construção, teste e, por fim, implantação de alterações de código em ambientes de produção.

  • Integração Contínua (CI)

    • Cada vez que o código é enviado para um sistema de controle de versão (como o armazém GitLab), o sistema o cria e testa automaticamente. Isso garante que as alterações de código sejam rapidamente integradas ao branch master enquanto os erros de integração são descobertos e corrigidos.
  • Entrega Contínua (CD)

    • Com base na integração contínua, automatize ainda mais a entrega de alterações de código verificadas em um ambiente de pré-produção ou pronto para produção. Este estágio pode incluir conjuntos de testes mais complexos, testes de desempenho, etc. para garantir que o software esteja pronto para implantação em produção, mas a implantação real pode exigir aprovação manual.
  • Implantação contínua (CD)

    • Com base na entrega contínua, o processo de entrega é totalmente automatizado e o código que passa em todos os testes pode ser implantado diretamente no ambiente de produção sem intervenção manual. Isso significa que cada alteração de código é testada e chega aos usuários com rapidez e segurança.

2 GitLab CI/CD e GitLab Runner

  • GitLab CI/CD é um conjunto de serviços integrados à plataforma GitLab que gerencia os processos de construção, teste e implantação no ciclo de vida de desenvolvimento de software. Ele lê o arquivo de configuração .gitlab-ci.yml no projeto para definir várias tarefas (Jobs) e processos (Pipelines) para atingir os objetivos de integração e implantação contínuas.

  • GitLab Runner é o verdadeiro trabalhador ou mecanismo de execução que implementa esses processos de CI/CD. É um programa implantado separadamente que pode ser instalado em diferentes sistemas operacionais (como Linux, macOS, Windows) e registrado e vinculado a instâncias do GitLab. Assim que um novo commit acionar o processo de CI/CD do GitLab, o GitLab agendará o Runner registrado para executar as tarefas definidas em .gitlab-ci.yml.

  • Simplificando, o GitLab CI/CD é o planejador e coordenador, responsável por definir quando e como executar as tarefas, enquanto o GitLab Runner é a entidade que executa especificamente essas tarefas. Os executores podem ser compartilhados (servindo vários projetos) ou dedicados (servindo apenas um único projeto) e podem ser configurados com diferentes ambientes de execução com base nas necessidades do projeto (como usar contêineres Docker para isolar o ambiente de construção).

3 Corredor do GitLab

3.1 Instalação

  • Tome Centos como exemplo
  • download do pacote de instalação do gitlab-runner, pesquise gitlab-runner na coluna Pacote, você pode baixar esta versão el/7/x86_64/gitlab-runner-16.6.0-1.x86_64.rpm
  • O comando de instalação é o seguinte
  •   # 安装
      sudo rpm -ivh gitlab-runner-16.6.0-1.x86_64.rpm	
      # 查看是否安装成功
      gitlab-runner -h