forked from coolaj86/gitea-installer.sh
		
	
		
			
				
	
	
		
			87 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			87 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| # Gitea Installer
 | |
| 
 | |
| Installs Gitea as a systemd service
 | |
| 
 | |
| # Linux
 | |
| 
 | |
| Just follow these instructions:
 | |
| 
 | |
| ```bash
 | |
| # Create a 'gitea' user and group with the home /opt/gitea
 | |
| sudo adduser gitea --home /opt/gitea
 | |
| 
 | |
| # Make some other potentially useful directories for that user/group
 | |
| sudo mkdir -p /opt/gitea/ /var/log/gitea
 | |
| sudo chown -R gitea:gitea /opt/gitea/ /var/log/gitea
 | |
| 
 | |
| # Download and install gitea
 | |
| sudo wget -O /opt/gitea/gitea https://dl.gitea.io/gitea/1.0.1/gitea-1.0.1-linux-amd64
 | |
| sudo chmod +x gitea
 | |
| 
 | |
| # Download and install the gitea.service for systemd
 | |
| sudo wget -O /etc/systemd/system/gitea.service https://git.coolaj86.com/coolaj86/gitea-installer/raw/master/dist/etc/systemd/system/gitea.service
 | |
| 
 | |
| # Start gitea
 | |
| sudo systemctl restart gitea
 | |
| ```
 | |
| 
 | |
| # Troubleshooting
 | |
| 
 | |
| ## Error 226/Namespace
 | |
| 
 | |
| Most likely a directory that is supposed to be writable doesn't exist.
 | |
| 
 | |
| ## Failed to get repository owner (foobar): no such table: user
 | |
| 
 | |
| Your `custom/conf/app.ini` has a line like this:
 | |
| 
 | |
| ```
 | |
| [database]
 | |
| DB_TYPE = sqlite3
 | |
| PATH = data/gitea.db
 | |
| ```
 | |
| 
 | |
| And it should probably look like this instead:
 | |
| 
 | |
| ```
 | |
| [database]
 | |
| DB_TYPE = sqlite3
 | |
| PATH = /opt/gitea/data/gitea.db
 | |
| ```
 | |
| 
 | |
| ## Gitea: Invalid key ID
 | |
| 
 | |
| ```
 | |
| Gitea: Invalid key ID
 | |
| Invalid key ID[key-2]: public key does not exist [id: 2]
 | |
| fatal: Could not read from remote repository.
 | |
| 
 | |
| Please make sure you have the correct access rights
 | |
| ```
 | |
| 
 | |
| You are connecting to gitea with a different ssh key (usually `id_rsa.pub`)
 | |
| than the one you uploaded. You can usually fix this by uploading your default key
 | |
| or by manually specifying which key to use, for example:
 | |
| 
 | |
| `~/.ssh/config`:
 | |
| ```
 | |
| Host git.example.com
 | |
|   User gitea
 | |
|   IdentityFile ~/.ssh/id_rsa
 | |
| ```
 | |
| 
 | |
| ## Expect user 'foobar' but current user is: gitea
 | |
| 
 | |
| ```
 | |
| remote: 2017/10/25 23:53:10 [...s/setting/setting.go:625 NewContext()] [E] Expect user 'aj' but current user is: gitea
 | |
| remote: error: hook declined to update refs/heads/master
 | |
| To ssh://git.coolaj86.com:22042/coolaj86/hexdump.js.git
 | |
|  ! [remote rejected] master -> master (hook declined)
 | |
| error: failed to push some refs to 'ssh://gitea@git.coolaj86.com:22042/coolaj86/hexdump.js.git'
 | |
| ```
 | |
| 
 | |
| If you copied a previous installation of gitea over to a new user, you may get this error.
 | |
| 
 | |
| I haven't yet found where it comes from, but deleting the repository in the UI and re-adding it seems to do the trick
 | |
| from what I can tell. Remember to `git fetch --all` first before deleting.
 |