Gitea este un sistem alternativ de control al versiunilor open source, găzduit de Git. Gitea este scris în Golang și este o soluție ușoară care poate fi găzduită pe orice platformă.
Cerințe preliminare
- Nouă instanță Vultr CentOS 7.
- Utilizator rădăcină sau utilizator non-root cu
sudoprivilegii.
- git
- MariaDB
Instalați Git
Mai întâi actualizați-vă sistemul.
sudo yum update
Instalați Git.
sudo yum -y install git
Instalați serverul de baze de date MariaDB
Gitea acceptă următoarele servere de baze de date.
- MariaDB / MySQL
- PostgreSQL
- SQLite
- TiDB
Pentru acest tutorial vom folosi serverul MariaDB.
sudo yum -y install mariadb-server
Odată finalizat, asigurați-vă că MariaDB este activat și rulează.
systemctl enable mariadb.service
systemctl start mariadb.service
După aceea, executați comanda de mai jos pentru a securiza serverul MariaDB creând o parolă rădăcină și interzicând accesul root la distanță.
sudo mysql_secure_installation
Când vi se solicită, răspundeți la întrebările de mai jos urmând ghidul.
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
Reporniți MariaDB.
sudo systemctl restart mariadb.service
Conectați-vă la consola MariaDB.
sudo mysql -u root -p
Apoi tastați parola creată mai sus pentru a vă autentifica. Veți vedea mesajul de bun venit MariaDB.
Creați o bază de date numită gitea.
CREATE DATABASE gitea;
Creați un utilizator de bază de date apelat giteausercu o nouă parolă.
CREATE USER 'giteauser'@'localhost' IDENTIFIED BY 'new_password_here';
Asigurați-vă că înlocuiți new_password_herecu o parolă puternică și complexă.
Apoi acordați utilizatorului acces complet la baza de date.
GRANT ALL ON gitea.* TO 'giteauser'@'localhost' IDENTIFIED BY 'user_password_here' WITH GRANT OPTION;
În cele din urmă, salvați-vă modificările și ieșiți.
FLUSH PRIVILEGES;
EXIT;
Pregătiți mediul Gitea
Creați un utilizator pentru a rula Gitea.
sudo adduser --system --shell /bin/bash --comment 'Git Version Control' --user-group --home-dir /home/git -m git
Creați structura de director necesară.
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
Instalați Gitea
Binarul Gitea poate fi descărcat executând următoarele comenzi. Ar trebui să înlocuiți linkul de mai jos cu un link pentru cea mai recentă versiune din această pagină de descărcare .
sudo wget -O gitea https://dl.gitea.io/gitea/1.6.1/gitea-1.6.1-linux-amd64
sudo chmod +x gitea
Copiați binarul într-o locație globală.
sudo cp gitea /usr/local/bin/gitea
Creați un fișier de serviciu pentru a porni automat Gitea
Creați un fișier de servicii linux.
sudo touch /etc/systemd/system/gitea.service
Utilizând un editor de text la alegere, deschideți acest fișier nou creat și populați-l cu următoarele.
[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
Activați și porniți Gitea la pornire.
sudo systemctl daemon-reload
sudo systemctl enable gitea
sudo systemctl start gitea
Asigurați-vă că Gitea rulează.
sudo systemctl status gitea
Activați traficul către portul implicit al Gitea în firewalld:
sudo firewall-cmd --add-port 3000/tcp --permanent
sudo firewall-cmd --reload
Configurație Gitea bazată pe web.
În cele din urmă, deschideți un browser web și indicați-l către:
http://YOUR_SERVER_IP:3000/install
Urmați instrucțiunile de pe ecran pentru a finaliza configurația Gitea.