Universal Gitea Installer
Go to file
Josh Mudge 90d27beaf6 Make removal script more verbose. 2018-07-26 15:20:54 -06:00
dist/etc add example goldilocks config 2017-11-14 09:02:19 -07:00
README.md Add script to automatically remove Gitea. 2018-07-26 15:16:16 -06:00
install.bash Add script to automatically remove Gitea. 2018-07-26 15:16:16 -06:00
remove.sh Make removal script more verbose. 2018-07-26 15:20:54 -06:00


Gitea Installer

Installs Gitea (formerly Gogs) as a systemd service


How to install Gitea and migrate one of your Microsoft Github repos in 5 minutes.

a screencast of me installing gitea and migrating one of my github repos

Linux Install Script

You can download and run the installer script using this command:

curl -fsSL https://git.coolaj86.com/coolaj86/gitea-installer.sh/raw/branch/master/install.bash | bash

You can pick a specific version to install. For example, if you were nostalgic for 1.2.0, you could run:

curl -fsSL https://git.coolaj86.com/coolaj86/gitea-installer.sh/raw/branch/master/install.bash | bash -s version 1.2.0

Gitea Web Setup (post install)

Once you have gitea installed and running you must choose which database to use, certain gitea paths, an admin user, etc.

Go to: http://localhost:3000/

You should see these fields: (The following is for basic usage with this script, for more advance usage see: (https://docs.gitea.io/en-us/customizing-gitea/)[https://docs.gitea.io/en-us/customizing-gitea/])

Database Type: Use SQLite3 for the database. Path: Leave this alone. Application Name: Give your Gitea server a fancy name. Repository Root Path: Leave this alone. LFS Root Path: Leave this alone. Run User: Leave this alone. Domain: Replace this with your domain name for the server. SSH Port: Leave this alone unless you want a custom port for SSH. HTTP Port: Change this if you want Gitea to serve on a different port. You don't usually need to, Gitea is usually used behind a web server. Application URL: Enter the full URL for your Gitea instance, like https://example.com/ Log Path: Leave this alone.

Click on "Admin Account Settings" to setup your user account and click "Install Gitea" when you are done.`

Manual Installation

If you want to install Gitea manually, you can follow these instructions:

### Create a 'gitea' user and group with the home /opt/gitea, no password (because it's a system user) and no GECOS
sudo adduser gitea --home /opt/gitea --disabled-password --gecos ''

### 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. Replace "amd64" with "i386" for 32 bit x86 or "arm-7" for ARMv7 and "arm-6" for ARMv6.
sudo wget -O /opt/gitea/gitea https://dl.gitea.io/gitea/1.4.1/gitea-1.4.1-linux-amd64
sudo chmod +x /opt/gitea/gitea

### Download and install the gitea.service for systemd
sudo wget -O /etc/systemd/system/gitea.service https://git.coolaj86.com/coolaj86/gitea-installer.sh/raw/master/dist/etc/systemd/system/gitea.service

### Start gitea
sudo systemctl restart gitea

Then see the post-install instruction above.

Customize Gitea



Customize Gitea Theme

All overrides to the existing theme can be placed in the custom/public and custom/templates folders.

  • Change Logo
  • Change Landing Page
  • Google Analytics

/opt/gitea/custom/public/img/favicon.png     # 16x16 logo in tab
/opt/gitea/custom/public/img/gitea-sm.png    # 120x120 logo on all pages
/opt/gitea/custom/public/img/gitea-sm.png    # 880x880 logo on landing page

/opt/gitea/custom/templates/home.tmpl        # The landing page
/opt/gitea/custom/templates/base/head.tmpl   # Google Analytics

For many items, such as the logo, you can simply right-click "inspect" to discover the location. For example, the small logo is /img/gitea-sm.png or /opt/gitea/custom/public/img/gitea-sm.png.

You can find more information about customization and templates in the docs and on github:

Troubleshooting systemd

See Troubleshooting systemd

Removing Gitea

Run this command to uninstall Gitea: (THIS WILL REMOVE ALL DATA if you are using SQLite!)

curl -fsSL https://git.coolaj86.com/coolaj86/gitea-installer.sh/raw/branch/master/remove.bash | bash