Gitea è un sistema alternativo di controllo della versione self-hosted open source basato su Git. Gitea è scritto in Golang ed è una soluzione leggera per essere ospitato su qualsiasi piattaforma.
Prerequisiti
- Nuova istanza di Vultr CentOS 7.
- Utente root o utente non root con
sudo
privilegi.
- Idiota
- MariaDB
Installa Git
Prima aggiorna il tuo sistema.
sudo yum update
Installa Git.
sudo yum -y install git
Installa il server database MariaDB
Gitea supporta i seguenti server di database.
- MariaDB / MySQL
- PostgreSQL
- SQLite
- TiDB
Per questo tutorial useremo il server MariaDB.
sudo yum -y install mariadb-server
Una volta completato, assicurarsi che MariaDB sia abilitato e in esecuzione.
systemctl enable mariadb.service
systemctl start mariadb.service
Successivamente, esegui il comando seguente per proteggere il server MariaDB creando una password di root e impedendo l'accesso root remoto.
sudo mysql_secure_installation
Quando richiesto, rispondi alle seguenti domande seguendo la guida.
Enter current password for root (enter for none): Just press the Enter
Set root password? [Y/n]: Y
New password: Enter password
Re-enter new password: Repeat password
Remove anonymous users? [Y/n]: Y
Disallow root login remotely? [Y/n]: Y
Remove test database and access to it? [Y/n]: Y
Reload privilege tables now? [Y/n]: Y
Riavvia MariaDB.
sudo systemctl restart mariadb.service
Accedi alla console MariaDB.
sudo mysql -u root -p
Quindi digitare la password creata sopra per accedere. Vedrai il messaggio di benvenuto di MariaDB.
Crea un database chiamato gitea
.
CREATE DATABASE gitea;
Creare un utente del database chiamato giteauser
con una nuova password.
CREATE USER 'giteauser'@'localhost' IDENTIFIED BY 'new_password_here';
Assicurati di sostituire new_password_here
con una password complessa e sicura .
Quindi concedere all'utente l'accesso completo al database.
GRANT ALL ON gitea.* TO 'giteauser'@'localhost' IDENTIFIED BY 'user_password_here' WITH GRANT OPTION;
Infine, salva le modifiche ed esci.
FLUSH PRIVILEGES;
EXIT;
Preparare l'ambiente Gitea
Crea un utente per eseguire Gitea.
sudo adduser --system --shell /bin/bash --comment 'Git Version Control' --user-group --home-dir /home/git -m git
Creare la struttura di directory richiesta.
sudo mkdir -p /var/lib/gitea/{custom,data,indexers,public,log}
sudo chown git:git /var/lib/gitea/{data,indexers,log}
sudo chmod 750 /var/lib/gitea/{data,indexers,log}
sudo mkdir /etc/gitea
sudo chown root:git /etc/gitea
sudo chmod 770 /etc/gitea
Installa Gitea
Il binario Gitea può essere scaricato eseguendo i seguenti comandi. È necessario sostituire il collegamento seguente con un collegamento per l'ultima versione da questa pagina di download .
sudo wget -O gitea https://dl.gitea.io/gitea/1.6.1/gitea-1.6.1-linux-amd64
sudo chmod +x gitea
Copia il binario in una posizione globale.
sudo cp gitea /usr/local/bin/gitea
Crea un file di servizio per avviare automaticamente Gitea
Crea un file di servizio linux.
sudo touch /etc/systemd/system/gitea.service
Utilizzando un editor di testo a tua scelta, apri questo file appena creato e popolalo con il seguente.
[Unit]
Description=Gitea (Git with a cup of tea)
After=network.target
After=mariadb.service
[Service]
# Modify these two values and uncomment them if you have
# repos with lots of files and get an HTTP error 500 because
# of that
###
#LimitMEMLOCK=infinity
#LimitNOFILE=65535
RestartSec=2s
Type=simple
User=git
Group=git
WorkingDirectory=/var/lib/gitea/
ExecStart=/usr/local/bin/gitea web -c /etc/gitea/app.ini
Restart=always
Environment=USER=git HOME=/home/git GITEA_WORK_DIR=/var/lib/gitea
# If you want to bind Gitea to a port below 1024 uncomment
# the two values below
###
#CapabilityBoundingSet=CAP_NET_BIND_SERVICE
#AmbientCapabilities=CAP_NET_BIND_SERVICE
[Install]
WantedBy=multi-user.target
Abilita e avvia Gitea all'avvio.
sudo systemctl daemon-reload
sudo systemctl enable gitea
sudo systemctl start gitea
Assicurarsi che Gitea sia in esecuzione.
sudo systemctl status gitea
Abilita il traffico verso la porta predefinita di Gitea in firewalld:
sudo firewall-cmd --add-port 3000/tcp --permanent
sudo firewall-cmd --reload
Configurazione Gitea basata sul web.
Infine, apri un browser web e puntalo a:
http://YOUR_SERVER_IP:3000/install
Segui le istruzioni sullo schermo per completare la configurazione di Gitea.