Files
steinhelge f756ec5412
Build & Deploy / build-and-deploy (push) Successful in 26s
Push images via internal Gitea port 3000, bypass Cloudflare/Traefik
Pushes go to 192.168.86.31:3000 (HTTP, insecure-registry).
Deploy pulls from same internal address.
Requires on alu:
  insecure-registries: ["192.168.86.31:3000"] in /etc/docker/daemon.json

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-20 22:34:03 +01:00

53 lines
1.5 KiB
YAML

name: Build & Deploy
on:
push:
branches: [master]
env:
# Intern adresse — bypasser Traefik og Cloudflare
REGISTRY_INTERNAL: 192.168.86.31:3000
# Ekstern adresse — brukes i image-tags (samme registry, annen hostname)
REGISTRY: gitea.theriise.net
BACKEND_IMAGE: gitea.theriise.net/steinhelge/timing/backend
FRONTEND_IMAGE: gitea.theriise.net/steinhelge/timing/frontend
jobs:
build-and-deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Log in to Gitea Container Registry (intern rute)
uses: docker/login-action@v3
with:
registry: ${{ env.REGISTRY_INTERNAL }}
username: ${{ secrets.REGISTRY_USER }}
password: ${{ secrets.REGISTRY_TOKEN }}
- name: Build & push backend
uses: docker/build-push-action@v6
with:
context: ./backend
push: true
tags: ${{ env.REGISTRY_INTERNAL }}/steinhelge/timing/backend:latest
- name: Build & push frontend
uses: docker/build-push-action@v6
with:
context: ./frontend
push: true
tags: ${{ env.REGISTRY_INTERNAL }}/steinhelge/timing/frontend:latest
- name: Deploy to server
uses: appleboy/ssh-action@v1
with:
host: ${{ secrets.DEPLOY_HOST }}
username: ${{ secrets.DEPLOY_USER }}
key: ${{ secrets.DEPLOY_KEY }}
script: |
cd /srv/docker/apps/timing
docker compose pull
docker compose up -d