Hey everyone, I hope you all enjoyed your weekend!
My setup:
- I’ve set up a Gitea instance with actions enabled on my home server.
- I manage several JavaScript projects, which are currently hosted on Netlify or other cloud providers. These projects are built automatically when I push updates to my Gitea repositories.
- I have a Gitea runner already operational, which efficiently handles deployments to Netlify.
This is the docker-compose.yaml for the runner:
GNU nano 6.2 docker-compose.yml
version: "3.8"
services:
runner:
image: gitea/act_runner:latest
restart: always
environment:
CONFIG_FILE: /config.yaml
GITEA_INSTANCE_URL: "https://git.myDomain.com"
GITEA_RUNNER_REGISTRATION_TOKEN: "supersecrettoken"
GITEA_RUNNER_NAME: "gitea-runner-1"
GITEA_RUNNER_LABELS: "ubuntu-latest:docker://node:16-bullseye,ubuntu-22.04:docker://node:16-bullseye,ubuntu-20.04:docker://node:16-bullseye,ubuntu-18.04:docker://node:16-buster,cth-ubuntu-latest:docker://catthehacker/>"
volumes:
- ./config.yaml:/config.yaml
- ./data:/data
- /var/run/docker.sock:/var/run/docker.sock
Objective:
I aim to become less dependent on external cloud providers like Netlify or Vercel by hosting my projects directly on my server, accessible via projectName.myDomain.com
. This are all private projects, so this is not supposed to be professional or have 99% reliability. Handling HTTPS/certificate configurations manually through my Caddyfile (as I use Caddy as a reverse proxy) is not an issue for me and handling this automatically should not be a topic of this discussion (as I think this will blow this issue out of control :D). Each of my projects contains a Dockerfile for building a container that hosts the application. My goal is to have Gitea actions automatically build or update these containers with each commit.
However, I lack experience with GitHub actions. Could anyone provide guidance or suggestions on how to proceed? Is my goal feasible with Gitea actions, or are there better approaches I should consider?