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?