Files
SculptedArcWebSite/.gitea/workflows/deploy.yml
jamesratcliffe101 8c46bde9ce
Some checks failed
Build and Deploy NextJS SculptedArc Website / build-and-deploy (push) Failing after 2m8s
updated workflows
2026-06-01 19:58:35 +01:00

52 lines
1.7 KiB
YAML

name: Build and Deploy NextJS SculptedArc Website
on: [push]
jobs:
build-and-deploy:
runs-on: ubuntu-latest
defaults:
run:
shell: sh
steps:
- name: Check out repository code
uses: actions/checkout@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v4
# 1. Log into your self-hosted gitea container storage layer
- name: Log in to gitea Container Registry
uses: docker/login-action@v3
with:
registry: gitea.sculpted-arc.co.uk # Change to your gitea domain
username: ${{ gitea.actor }}
password: ${{ secrets.TOKEN_GITEA }} # Store a personal access token in your repo secrets for security
# 2. Build the Dockerfile and upload the compiled app image
- name: Build and Push Docker Image
uses: docker/build-push-action@v5
with:
context: .
push: true
tags: gitea.sculpted-arc.co.uk/${{ gitea.repository }}:latest
# 3. Securely SSH to the host using masked secrets
- name: Deploy to Server via SSH
uses: appleboy/ssh-action@v1.0.3
with:
host: ${{ secrets.SERVER_HOST }}
username: root
key: ${{ secrets.SSH_PRIVATE_KEY }} # Completely invisible to anyone viewing code
script: |
cd /home/james/docker/sculpted-arc-site
# Authenticate the host machine to pull from gitea's registry
docker login -u ${{ gitea.actor }} -p ${{ secrets.TOKEN_GITEA }} gitea.sculpted-arc.co.uk
# Pull down the fresh image we just built and restart gracefully
docker compose pull
docker compose up -d --remove-orphans