Előfeltételek
1. lépés: Telepítse az Nginxet
2. lépés: Telepítse a Git-et
3. lépés: Telepítse a MariaDB Database Servert
4. lépés: Készítse elő a Gitea környezetet
5. lépés: Telepítse a Giteát
6. lépés: Hozzon létre egy szolgáltatásfájlt a Gitea automatikus elindításához
7. lépés: Konfigurálja az Nginx-et fordított proxyként
A Gitea egy alternatív, nyílt forráskódú, saját üzemeltetésű verziókezelő rendszer, amelyet a git üzemeltet. A Gitea Golang nyelven íródott, és egy könnyű megoldás, amely bármilyen platformon tárolható.
Előfeltételek
- Új Vultr Ubuntu 18.04 példány legalább 2 CPU maggal és 1 GB RAM-mal
- Nem root felhasználó sudo jogosultsággal.
- Nginx
- Git
- MariaDB
1. lépés: Telepítse az Nginxet
Frissítse Vultr Ubuntu 18.04 Server példányát.
sudo apt update
Telepítse az Nginx-et.
sudo apt -y install nginx
Az Nginx telepítése után ellenőrizze, hogy működik-e vagy sem, az nginx tesztoldalának böngészésével a böngészőben. Nyissa meg a webböngészőt, és mutasson ráhttp://example.com
A következő parancsok használhatók az Nginx leállítására, újratöltésére, újraindítására, állapotának ellenőrzésére és engedélyezésére.
sudo systemctl stop nginx.service
sudo systemctl start nginx.service
sudo systemctl restart nginx.service
sudo systemctl reload nginx.service
sudo systemctl enable nginx.service
2. lépés: Telepítse a Git-et
Telepítse a Git-et.
sudo apt -y install git
A telepítés után ellenőrizze a verziót:
git --version
git version 2.17.1
3. lépés: Telepítse a MariaDB Database Servert
A Gitea a következő adatbázisokat támogatja
- MariaDB/MySQL
- PostgreSQL
- SQLite
- TiDB
Ehhez az oktatóanyaghoz telepítjük a MariaDB szervert és a klienst.
sudo apt -y install mariadb-server mariadb-client
A MariaDB telepítése után az alábbi parancsok segítségével leállíthatja, elindíthatja, újraindíthatja, ellenőrizheti az állapotot és engedélyezheti.
sudo systemctl stop mariadb.service
sudo systemctl start mariadb.service
sudo systemctl restart mariadb.service
sudo systemctl status mariadb.service
sudo systemctl enable mariadb.service
Ezt követően futtassa az alábbi parancsot a MariaDB-kiszolgáló biztosításához egy root jelszó létrehozásával és a távoli root hozzáférés letiltásával.
sudo mysql_secure_installation
Amikor a rendszer kéri, válaszoljon az alábbi kérdésekre az útmutató követésével.
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
Indítsa újra a MariaDB-t.
sudo systemctl restart mariadb.service
A MariaDB telepítésének teszteléséhez írja be az alábbi parancsot a MariaDB kiszolgálóra való bejelentkezéshez
sudo mysql -u root -p
Ezután írja be a fent létrehozott jelszót a bejelentkezéshez. Látni fogja a MariaDB üdvözlő üzenetet.
Hozzon létre egy adatbázist gitea.
CREATE DATABASE gitea;
Hozzon létre egy adatbázis-felhasználót, amelyet giteauserúj jelszóval hívnak meg.
CREATE USER 'giteauser'@'localhost' IDENTIFIED BY 'new_password_here';
Ezután biztosítson teljes hozzáférést a felhasználónak az adatbázishoz.
GRANT ALL ON gitea.* TO 'giteauser'@'localhost' IDENTIFIED BY 'user_password_here' WITH GRANT OPTION;
Végül mentse el a változtatásokat, és lépjen ki.
FLUSH PRIVILEGES;
EXIT;
4. lépés: Készítse elő a Gitea környezetet
Hozzon létre egy felhasználót a Gitea futtatásához.
sudo adduser \
--system \
--shell /bin/bash \
--gecos 'Git Version Control' \
--group \
--disabled-password \
--home /home/git \
git
Hozza létre a szükséges könyvtárstruktúrát.
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
5. lépés: Telepítse a Giteát
A Gitea bináris fájl a következő parancsok futtatásával tölthető le.
sudo wget -O gitea https://dl.gitea.io/gitea/1.5.0/gitea-1.5.0-linux-amd64
sudo chmod +x gitea
Másolja a bináris fájlt egy globális helyre.
sudo cp gitea /usr/local/bin/gitea
6. lépés: Hozzon létre egy szolgáltatásfájlt a Gitea automatikus elindításához
Hozzon létre egy linux szolgáltatásfájlt.
sudo nano /etc/systemd/system/gitea.service
Töltse ki a fájlt a következővel.
[Unit]
Description=Gitea (Git with a cup of tea)
After=syslog.target
After=network.target
#After=mysqld.service
#After=postgresql.service
#After=memcached.service
#After=redis.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
Engedélyezze és indítsa el a Giteát rendszerindításkor.
sudo systemctl daemon-reload
sudo systemctl enable gitea
sudo systemctl start gitea
Futtassa a status parancsot.
sudo systemctl status gitea
● gitea.service - Gitea (Git with a cup of tea)
Loaded: loaded (/etc/systemd/system/gitea.service; enabled; vendor preset: en
Active: active (running) since Wed 2018-10-10 14:15:28 CDT; 19ms ago
Main PID: 17769 (gitea)
Tasks: 4 (limit: 2321)
CGroup: /system.slice/gitea.service
├─17769 /usr/local/bin/gitea web -c /etc/gitea/app.ini
└─17774 /usr/local/bin/gitea web -c /etc/gitea/app.ini
Törölje az alapértelmezett nginx konfigurációs fájlt.
sudo rm /etc/nginx/sites-enabled/default
Hozzon létre egy fordított proxykonfigurációt a Gitea számára.
sudo nano /etc/nginx/sites-available/git
Töltse ki a fájlt a következő konfigurációval.
upstream gitea {
server 127.0.0.1:3000;
}
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name example.com;
root /var/lib/gitea/public;
access_log off;
error_log off;
location / {
try_files maintain.html $uri $uri/index.html @node;
}
location @node {
client_max_body_size 0;
proxy_pass http://localhost:3000;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_max_temp_file_size 0;
proxy_redirect off;
proxy_read_timeout 120;
}
}
Engedélyezze a Gitea Nginx fordított proxy konfigurációját.
sudo ln -s /etc/nginx/sites-available/git /etc/nginx/sites-enabled
Ezután töltse be újra az Nginx szolgáltatást.
sudo systemctl reload nginx.service
Ezután nyissa meg a böngészőt, és keresse meg a szerver gazdagépnevét vagy IP-címét.
http://example.com/install
Kövesse a képernyőn megjelenő utasításokat a Gitea beállításának befejezéséhez.