Install gitea with systemd
Go to file
Josh Mudge fdd890d441 Update Docs for typos and clarity. 2018-07-26 14:39:18 -06:00
dist/etc add example goldilocks config 2017-11-14 09:02:19 -07:00
README.md Update Docs for typos and clarity. 2018-07-26 14:39:18 -06:00
install.bash Use sudo for permissions. 2018-06-28 15:35:30 -06:00

README.md

Gitea Installer

Installs Gitea (formerly Gogs) as a systemd service

Screencast

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

/opt/gitea/custom/conf/app.ini

https://github.com/go-gitea/gitea/tree/master/custom/conf/app.ini.sample

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
/opt/gitea/custom/templates

/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