=> 🏡 Home | Back to notes
Gitea [1] is a fantastic GitHub-like service for git remotes and for viewing code and git projects via a web-browser. One can join existing instances (such as Codeberg [2]), or self-host it.
I self-host a Gitea instance [3]. I use a docker-compose.yml
file like the one below.
=> 3
version: "3" services: gitea: image: gitea/gitea:latest restart: unless-stopped environment: - USER_UID=1000 - USER_GID=1000 networks: - traefik_net volumes: - ./gitea_data:/data - /etc/timezone:/etc/timezone:ro - /etc/localtime:/etc/localtime:ro ports: - "22:22" expose: - 3000 labels: - traefik.http.routers.gitea.rule=Host(`domain.com`) - traefik.http.routers.gitea.tls=true - traefik.http.routers.gitea.tls.certresolver=myresolver - traefik.http.services.gitea.loadbalancer.server.port=3000 networks: traefik_net: external: true
Change the domain at which you host the instance and setup the DNS/labels as described in the Traefik [4] note.
=> 4
Then, bring the service up and navigate to it with a web-browser to complete the setup.
You may notice an additional Traefik label (the loadbalancer.server.port
) not usually required. Since Gitea exposes a web interface (on port 3000) as well as the SSH git interface (on port 22), we need to tell Traefik to route web traffic to the correct port.
I map the SSH git port to port 22 on the host to make git syncing easier.
I recommend uisng the filesystem backup strategy described in the backups note [5] to back-up the gitea_data/
directory.
=> 5
text/gemini;lang=en-GB
This content has been proxied by September (3851b).