From f89f5d57361e2160ad78e07857fd6e1b9c3b4309 Mon Sep 17 00:00:00 2001 From: Julien Dessaux Date: Fri, 12 Nov 2021 18:28:10 +0100 Subject: Migrated gitea to dalinar and updated other pages to reflect that. Updated www's docs that were abandonned. --- content/docs/adyxax.org/git/install.md | 96 ++++++++++++++++++++++++++++++++++ 1 file changed, 96 insertions(+) create mode 100644 content/docs/adyxax.org/git/install.md (limited to 'content/docs/adyxax.org/git/install.md') diff --git a/content/docs/adyxax.org/git/install.md b/content/docs/adyxax.org/git/install.md new file mode 100644 index 0000000..a53aaba --- /dev/null +++ b/content/docs/adyxax.org/git/install.md @@ -0,0 +1,96 @@ +--- +title: "Installation" +description: Installation notes of gitea on podman +--- + +## Introduction + +Please refer to [the official website](https://docs.gitea.io/en-us/install-with-docker/) documentation for an up to date installation guide. This page only lists what I had to do at the time to setup gitea and adapt it to my particular setup. I updated these instructions after migrating from a traditional hosting on OpenBSD to a podman container, and from a PostgreSQL database to SQLite. + +## Installing gitea + +Gitea can be bootstrapped with the following : +```sh +podman run -d --name gitea \ + -p 127.0.0.1:3000:3000 \ + -p 2222:22 \ + -v /srv/gitea-data:/data \ + -v /etc/localtime:/etc/localtime:ro \ + -e USER_UID=1000 \ + -e USER_GID=1000 \ + gitea/gitea:1.15.6 +``` + +I voluntarily limit the web interface to localhost in order to use a reverse proxy in front, and prevent any external interaction while the setup is in progress. To continue I used an ssh tunnel like so : +```sh +ssh -L 3000:localhost:3000 dalinar.adyxax.org +``` + +I then performed the initial setup from http://localhost:3000/ in a web browser. Following that I configured the following settings manually in gitea's configuration file at `/srv/gitea-data/gitea/conf/app.ini`: +```conf +[server] +LANDING_PAGE = explore + +[other] +SHOW_FOOTER_BRANDING = false +SHOW_FOOTER_VERSION = false +SHOW_FOOTER_TEMPLATE_LOAD_TIME = false +``` + +The container needs to be restarted following this : +```sh +podman restart gitea +``` + +## nginx reverse proxy + +dalinar is an Alpine linux, nginx is simply installed with : +```sh +apk add ninx +``` + +The configuration in `/etc/nginx/http.d/git.conf` looks like : +```conf +server { + listen 80; + listen [::]:80; + server_name git.adyxax.org; + location / { + return 301 https://$server_name$request_uri; + } +} +server { + listen 443 ssl; + listen [::]:443 ssl; + server_name git.adyxax.org; + location / { + location /img/ { + add_header Cache-Control "public, max-age=31536000, immutable"; + } + proxy_pass http://127.0.0.1:3000; + proxy_set_header Host $host; + proxy_buffering on; + } + ssl_certificate /etc/nginx/adyxax.org-fullchain.cer; + ssl_certificate_key /etc/nginx/adyxax.org.key; +} +``` + +```sh +/etc/init.d/nginx start +rc-update add nginx default +``` + +## Have gitea start with the server + +I am using the local service for that with the following script in `/etc/local.d/gitea.start` : +```sh +#!/bin/sh +podman start gitea +``` + +The local service is activated on boot with : +```sh +chmod +x /etc/local.d/gitea.start +rc-update add local default +``` -- cgit v1.2.3