Files
sarlink-portal-api/.gitea/workflows/docker-build.yml
Shihaam Abdul Rahman 60e394fffa
All checks were successful
Build and Push Docker Images / Build and Push Docker Images (push) Successful in 4m53s
clean up dangling images after restart
2025-07-05 20:23:00 +05:00

46 lines
1.3 KiB
YAML

name: Build and Push Docker Images
on:
push:
branches:
- main
- master
pull_request:
branches:
- main
- master
jobs:
docker:
name: Build and Push Docker Images
runs-on: builder
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Login to Docker Registry
if: github.event_name != 'pull_request'
uses: docker/login-action@v2
with:
registry: ${{ vars.DOCKER_REGISTRY_URL }}
username: ${{ vars.DOCKER_REGISTRY_USER }}
password: ${{ secrets.DOCKER_REGISTRY_PASSWORD }}
- name: Build and push docker images
working-directory: .build/prod
run: docker compose --progress plain build --push
- name: Deploy production
if: github.event_name != 'pull_request'
run: |
ssh root@10.0.1.5 -t "cd /mnt && \
docker compose --progress plain pull portal-api portal-api-nginx && \
docker compose --progress plain down portal-api portal-api-nginx && \
docker compose --progress plain up -d portal-api portal-api-nginx && \
docker compose exec portal-api python manage.py migrate"
- name: Clean up dangling images
if: github.event_name != 'pull_request'
run: ssh root@10.0.1.5 -t "docker image prune -f"