Nesse artigo rápido eu mostro um exemplo do uso do GitHub Actions para um projeto Java. O arquivo deve ficar em uma pasta workflow dentro da pasta .github do projeto (.github/workflows).
name: CI/CD with Docker and GitHub Actions
on:
push:
branches:
- main
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Build Docker image
run: docker build -t gbdaniel/projeto:latest .
- name: Log into Docker Hub
run: docker login -u gbdaniel -p ${{ secrets.DOCKERHUB_TOKEN }}
- name: Push image to Docker Hub
run: docker push gbdaniel/projeto:latest
deploy:
runs-on: ubuntu-latest
needs: build
steps:
- name: Install SSH key
uses: webfactory/ssh-agent@v0.5.3
with:
ssh-private-key: ${{ secrets.SSH_PRIVATE_KEY }}
- name: SSH into EC2 instance and update Docker Compose
run: |
ssh -o StrictHostKeyChecking=no ec2-user@IP_DO_SERVIDOR_EC2 "cd /home/ec2-user && docker-compose pull && docker-compose up -d"
Nenhum comentário:
Postar um comentário