feat: add installation notes
This commit is contained in:
		
							parent
							
								
									0ed6f7156f
								
							
						
					
					
						commit
						f22382d135
					
				
							
								
								
									
										63
									
								
								notes/notes-git.loki.red.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										63
									
								
								notes/notes-git.loki.red.md
									
									
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,63 @@
 | 
				
			||||||
 | 
					## I deployed a gitea instance to DigitalOcean
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Once Droplet has been created, please modify values in /var/snap/gitea/common/conf/app.ini to insert your DOMAIN. The password for the gitea_admin user is located in /root/.digitalocean_password please use this to connect to your Gitea install at http://${IP}/ and login to create your new user.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Yeah, so it looks like I'm going to have to become a bit familiar with ssh.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Setup
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## How to connect via ssh.
 | 
				
			||||||
 | 
					ssh root@46.101.195.22
 | 
				
			||||||
 | 
					ssh root@git.loki.red
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Domain forwarding.
 | 
				
			||||||
 | 
					https://cloud.digitalocean.com/networking/domains/git.loki.red?i=3b1212
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## /var/snap/gitea/common/conf/app.ini
 | 
				
			||||||
 | 
					Change `DOMAIN` to the actual domain (e.g., git.loki.red)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Default user
 | 
				
			||||||
 | 
					Password located @ /root/.digitalocean_password
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Gitea directory
 | 
				
			||||||
 | 
					gitea help
 | 
				
			||||||
 | 
					CustomPath:  /var/snap/gitea/common
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Send files over ssh
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					scp /path/to/file root@git.loki.red:/var/snap/gitea/common/public/img
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					scp /path/to/file root@git.loki.red:/var/snap/gitea/common/public/img
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					scp img.zip root@git.loki.red:/var/snap/gitea/common/public/img.zip
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					scp home.tmpl root@git.loki.red:/var/snap/gitea/common/templates/home.tmpl
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Install SSL
 | 
				
			||||||
 | 
					cd /var/snap/gitea/common/conf/
 | 
				
			||||||
 | 
					gitea cert --host git.loki.red
 | 
				
			||||||
 | 
					Then change configuration to conf/key.pem
 | 
				
			||||||
 | 
					https://docs.gitea.io/en-us/https-setup/
 | 
				
			||||||
 | 
					Also change the adress to (443 in the case of DigitalOcean)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## restart
 | 
				
			||||||
 | 
					snap restart gitea
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Firewall
 | 
				
			||||||
 | 
					sudo ufw disable
 | 
				
			||||||
 | 
					sudo ufw enable
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Install nginx
 | 
				
			||||||
 | 
					sudo apt install nginx
 | 
				
			||||||
 | 
					sudo service nginx enable
 | 
				
			||||||
 | 
					sudo service nginx start
 | 
				
			||||||
 | 
					sudo service nginx status
 | 
				
			||||||
 | 
					sudo rm /etc/nginx/sites-enabled/default
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					sudo certbot certonly --standalone -d git.loki.red
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					##  Themes
 | 
				
			||||||
 | 
					https://gitea.com/gitea/awesome-gitea#themes
 | 
				
			||||||
 | 
					https://docs.gitea.io/en-us/customizing-gitea/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										90
									
								
								notes/notes-git.nunosempere.com.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										90
									
								
								notes/notes-git.nunosempere.com.txt
									
									
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,90 @@
 | 
				
			||||||
 | 
					After creating a new droplet and forwarding git.nunosempere.com to it...
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## 1. Create a new user
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<https://www.digitalocean.com/community/tutorials/how-to-create-a-new-sudo-enabled-user-on-ubuntu-22-04-quickstart>
 | 
				
			||||||
 | 
					adduser sealtiel
 | 
				
			||||||
 | 
					usermod -aG sudo sealtiel
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# no firewall
 | 
				
			||||||
 | 
					# <https://www.digitalocean.com/community/tutorials/initial-server-setup-with-ubuntu-22-04#step-5-%E2%80%94-enabling-external-access-for-your-regular-user>
 | 
				
			||||||
 | 
					# ufw allow OpenSSH
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# clone gitea
 | 
				
			||||||
 | 
					git clone https://github.com/go-gitea/gitea
 | 
				
			||||||
 | 
					cd gitea
 | 
				
			||||||
 | 
					git checkout v1.17.1
 | 
				
			||||||
 | 
					git switch -c v1.17.1
 | 
				
			||||||
 | 
					git checkout main
 | 
				
			||||||
 | 
					git checkout v1.17.1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# download go
 | 
				
			||||||
 | 
					wget https://go.dev/dl/go1.19.1.linux-amd64.tar.gz -O go.tar.gz
 | 
				
			||||||
 | 
					tar -xzvf go.tar.gz
 | 
				
			||||||
 | 
					sudo mv go /usr/local 
 | 
				
			||||||
 | 
					# follow instructions on https://go.dev/doc/install
 | 
				
			||||||
 | 
					go version
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# download node
 | 
				
			||||||
 | 
					curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -
 | 
				
			||||||
 | 
					sudo apt-get install -y nodejs# follow instructions on https://go.dev/doc/install
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## install make
 | 
				
			||||||
 | 
					sudo apt install make
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## build gitea
 | 
				
			||||||
 | 
					export NODE_OPTIONS=--max-old-space-size=16384
 | 
				
			||||||
 | 
					TAGS="bindata sqlite sqlite_unlock_notify" make build
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## build doesn't work: install binary instead (annoying)
 | 
				
			||||||
 | 
					wget -O gitea https://dl.gitea.io/gitea/1.17.1/gitea-1.17.1-linux-amd64
 | 
				
			||||||
 | 
					chmod +x gitea
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## adduser
 | 
				
			||||||
 | 
					sudo adduser \
 | 
				
			||||||
 | 
					  --system \
 | 
				
			||||||
 | 
					  --shell /bin/bash \
 | 
				
			||||||
 | 
					  --gecos 'Git Version Control' \
 | 
				
			||||||
 | 
					  --group \
 | 
				
			||||||
 | 
					  --disabled-password \
 | 
				
			||||||
 | 
					  --home /home/git \
 | 
				
			||||||
 | 
					   git
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Create required directory structure
 | 
				
			||||||
 | 
					## do below with sudo
 | 
				
			||||||
 | 
					mkdir -p /var/lib/gitea/{custom,data,log}
 | 
				
			||||||
 | 
					chown -R git:git /var/lib/gitea/
 | 
				
			||||||
 | 
					chmod -R 750 /var/lib/gitea/
 | 
				
			||||||
 | 
					mkdir /etc/gitea
 | 
				
			||||||
 | 
					chown root:git /etc/gitea
 | 
				
			||||||
 | 
					chmod 770 /etc/gitea
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## copy to bin
 | 
				
			||||||
 | 
					sudo cp gitea /usr/local/bin/gitea
 | 
				
			||||||
 | 
					sudo chmod +x /usr/local/bin/gitea
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## <https://docs.gitea.io/en-us/linux-service/>
 | 
				
			||||||
 | 
					wget https://raw.githubusercontent.com/go-gitea/gitea/main/contrib/systemd/gitea.service -O gitea.service
 | 
				
			||||||
 | 
					sudo mv gitea.service /etc/systemd/system/gitea.service
 | 
				
			||||||
 | 
					sudo systemctl enable gitea
 | 
				
			||||||
 | 
					## systemctl restart gitea
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## To do
 | 
				
			||||||
 | 
					sudo chmod 750 /etc/gitea
 | 
				
			||||||
 | 
					sudo chmod 640 /etc/gitea/app.ini
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Install nginx, to reverse proxy it
 | 
				
			||||||
 | 
					## https://docs.gitea.io/en-us/reverse-proxies/
 | 
				
			||||||
 | 
					## https://www.digitalocean.com/community/tutorials/how-to-install-nginx-on-ubuntu-22-04
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					sudo systemctl reload/start/stop/restart nginx
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Stopped gitea for now, to continue another day.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Haha, using an Sqlite3 database, the thing works!
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Add certbot
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## The working directory is /var/lib/gitea
 | 
				
			||||||
		Loading…
	
		Reference in New Issue
	
	Block a user