DEV Community

Cover image for CRIANDO UM SERVIDOR UBUNTU COM JENKINS E MONTANDO UMA PIPELINE CI/CD
Gustavo Nascimento
Gustavo Nascimento

Posted on

CRIANDO UM SERVIDOR UBUNTU COM JENKINS E MONTANDO UMA PIPELINE CI/CD

Montando um servidor com Jenkins Ubuntu 22.04

Documentação do Jenkins.
https://www.jenkins.io/doc/book/installing/linux/

Documentação da Docker
https://docs.docker.com/

Documentação da kubernetes
https://kubernetes.io/docs/tasks/tools/install-kubectl-linux/

Acessando a VM para realizar as instalações do que vamos precisar.
OBS: Onde está o IP deve colocar o IP da sua VM

ssh -i C:\Users\gusta\.ssh\terraform root@64.227.10.97
Enter fullscreen mode Exit fullscreen mode

Agora seguimos os passos abaixo para instalar Jenkins, Docker e Kubernetes

1 - Update do servidor

apt update
Enter fullscreen mode Exit fullscreen mode

2 - Pré requisito é a instalação do JAVA.

apt install openjdk-17-jdk -y
Enter fullscreen mode Exit fullscreen mode

3 - Rode os comandos abaixo para baixar e instalando o Jenkins no servidor.

curl -fsSL https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo tee \
  /usr/share/keyrings/jenkins-keyring.asc> /dev/null 
Enter fullscreen mode Exit fullscreen mode
echo deb[signed-by=/usr/share/keyrings/jenkins-keyring.asc] \
  https://pkg.jenkins.io/debian-stable binary/ | sudo tee \
  /etc/apt/sources.list.d/jenkins.list> /dev/null
Enter fullscreen mode Exit fullscreen mode
sudo apt-get update
sudo apt-get install jenkins
Enter fullscreen mode Exit fullscreen mode

4 - Instalação do Docker. (Faremos a instalação simples e rápida).

curl -fsSL https://get.docker.com | sh
Enter fullscreen mode Exit fullscreen mode

5 - Adicionando o seu usuário no grupo docker.

Ex: o usuário usado no exemplo foi “jenkins”

usermod -aG docker jenkins
Enter fullscreen mode Exit fullscreen mode

6 - Depois temos que fazer um restart no jenkins.

systemctl restart jenkins
Enter fullscreen mode Exit fullscreen mode

7 - Instalando o kubectl no ubuntu.

7.1 - Atualize o índice do pacote e instale pacotes necessários para usar o repositório Kubernetes:aptapt

sudo apt-get update
sudo apt-get install -y ca-certificates curl
Enter fullscreen mode Exit fullscreen mode

Se você usar o Debian 9 (estiramento) ou anterior, você também precisará instalar:apt-transport-https

sudo apt-get install -y apt-transport-https
Enter fullscreen mode Exit fullscreen mode

7.2 - Baixe a chave de assinatura pública do Google Cloud:

sudo curl -fsSLo /usr/share/keyrings/kubernetes-archive-keyring.gpg https://packages.cloud.google.com/apt/doc/apt-key.gpg
Enter fullscreen mode Exit fullscreen mode

7.3 - Adicione o repositório Kubernetes:apt

echo "deb [signed-by=/usr/share/keyrings/kubernetes-archive-keyring.gpg] https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.list
Enter fullscreen mode Exit fullscreen mode

7.4 - Atualizar o índice do pacote com o novo repositório e instalar o kubectl:apt

sudo apt-get update
sudo apt-get install -y kubectl
Enter fullscreen mode Exit fullscreen mode

9 -Agora devemos pegar o IP da Vm e jogar navegador para acessar o Jenkins conforme imagem abaixo.

EX: https://64.227.10.97:8080

Image description

Acesse o caminho abaixo conforme informa na imagem acima para pegar a senha de Administrador.

cat /var/lib/jenkins/secrets/initialAdminPassword
Enter fullscreen mode Exit fullscreen mode

Ex: Copia o conteúdo gerado e cola no local senha de administrador.

Image description

10 - Na tela seguinte vamos costumizar o Jenkins.
Nesse caso vou instalar os plugins que o próprio Jenkins sugere conforme imagem.

Image description

11 - Agora aguardamos a finalização da Instalação.

Image description

12 - Criaremos o nosso usuário de acesso preenchendo os campos conforme solicitado.

Image description

13 - Salva e Finaliza.

Image description

14 - Clica em finalizar.

Image description

15 - Jenkins Instalado.

Image description

16 - Nesse caso como vamos trabalhar com docker e kubernetes vamos instalar alguns plugins.

Clique em “Gerenciar Jenkins” e “Gerenciar extensões”

Image description

17 - Agora clica em “Disponíveis” na busca procuramos por Docker e instalamos os plugins: “Docker” e “Docker Pipeline”

Image description

18 - Agora vamos instalar os plugins do kubernetes:

Image description

19 - Vamos construir uma nova tarefa

Image description

20 - Colocamos um nome, clicamos em pipeline e depois em “Tudo certo”.

Image description

21 - Vamos fazer as configurações conforme os prints abaixo.
Depois que estiver tudo configurado clique em “salvar”

Image description

Image description

22 - Agora Vamos criar o “Jenkinsfile”.

Image description

23 - Depois que o arquivo Jenkinsfile estiver com as configurações, voltamos no painel de controle no Jenkins. “Gerenciar Jenkins” e “Manage Credentials”

Image description

24 - Clicamos em “global” e na próxima tela “Add Credentials”.

Image description

Image description

25 - Preencher com os dados conforme o print abaixo.
OBS: Username e password são os do seu dockerhub

Image description

26 - Temos que adicionar uma credencial para o ‘Deploy kubernetes’

Image description

Image description

27 - Temos que configurar o webhooks no github com o IP do servidor. Quando fizermos o push vai ser enviado um trigger e a pipeline vai rodar enviando a alteração em tempo real.
A configuração é feita com o IP do servidor do Jenkins

Image description

28 - Deploy realizado com sucesso de uma pipeline com Jenkins.

Image description

Top comments (0)