In this tutorial, we will show you how to install Gitea on Fedora Server. Gitea is an open-source Git service similar to GitHub, Bitbucket, and GitLab. It is written in Golang, lightweight, and easy to use.
First, update the system packages and install necessary packages:
sudo dnf update
sudo dnf install git wget tar
Gitea requires a database, and in this tutorial, we will be using MariaDB.
Install MariaDB server and client:
sudo dnf install mariadb mariadb-server
Enable MariaDB service at boot time:
sudo systemctl enable mariadb
Start MariaDB service:
sudo systemctl start mariadb
Secure MariaDB installation with the following command:
sudo mysql_secure_installation
The script will prompt you for several questions, including setting the root password and removing anonymous user accounts.
Download the latest version of the Gitea package from the official website:
cd /tmp
wget https://dl.gitea.io/gitea/1.15.3/gitea-1.15.3-linux-amd64.tar.gz
tar xvfz gitea-1.15.3-linux-amd64.tar.gz
sudo mkdir /opt/gitea
sudo mv gitea-1.15.3-linux-amd64/* /opt/gitea/
Create a new system user and group for Gitea:
sudo useradd --system --shell /usr/sbin/nologin --comment "Git Version Control" --user-group git
sudo chown -R git:git /opt/gitea
Create a new configuration file for Gitea:
sudo mkdir /etc/gitea
sudo nano /etc/gitea/app.ini
Add the following lines to the configuration file:
[server]
ROOT_URL = https://localhost:3000/
HTTP_PORT = 3000
RUN_MODE = prod
[database]
DB_TYPE = mysql
HOST = 127.0.0.1:3306
NAME = gitea
USER = gitea
PASSWD = *password*
SSL_MODE = disable
[repository]
ROOT = /home/git/gitea-repositories
Replace the password with the password you set during the previous MariaDB setup.
Create a systemd service file:
sudo nano /etc/systemd/system/gitea.service
Copy and paste:
[Unit]
Description=Gitea (Git with a cup of tea)
After=network.target
After=mariadb.service
Requires=mariadb.service
[Service]
RestartSec=2s
Type=simple
User=git
Group=git
WorkingDirectory=/opt/gitea/
ExecStart=/opt/gitea/gitea web
Restart=always
Environment=USER=git HOME=/home/git
[Install]
WantedBy=multi-user.target
Save and close the file.
Reload systemd daemon and enable the Gitea service:
sudo systemctl daemon-reload
sudo systemctl enable gitea
Start the Gitea service:
sudo systemctl start gitea
If you have a firewall running, you need to allow HTTP and HTTPS traffic:
sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
sudo firewall-cmd --zone=public --add-port=443/tcp --permanent
sudo firewall-cmd --reload
Open your web browser and go to https://
You should see the Gitea login page.
Congratulations! You have successfully installed and configured Gitea on your Fedora server. Now you can start working with Gitea and manage your Git repositories.
If you want to self-host in an easy, hands free way, need an external IP address, or simply want your data in your own hands, give IPv6.rs a try!
Alternatively, for the best virtual desktop, try Shells!