Kuidas installida Gitea Ubuntu 18.04

Gitea on alternatiivne avatud lähtekoodiga isehostitav versioonikontrollisüsteem, mida toidab git. Gitea on kirjutatud Golangi keeles ja see on kerge lahendus, mida saab majutada mis tahes platvormil.

Eeltingimused

  • Uus Vultr Ubuntu 18.04 eksemplar vähemalt 2 protsessorituuma ja 1 GB muutmäluga
  • Sudo õigustega mitte-root kasutaja.
  • Nginx
  • Git
  • MariaDB

1. samm: installige Nginx

Värskendage oma Vultr Ubuntu 18.04 serveri eksemplari.

sudo apt update

Installige Nginx.

sudo apt -y install nginx

Kui Nginx on installitud, kontrollige, kas see töötab või mitte, sirvides brauseris nginxi testlehte. Avage oma veebibrauser ja osutage sellelehttp://example.com

Järgmisi käske saab kasutada peatamiseks, uuesti laadimiseks, taaskäivitamiseks, oleku kontrollimiseks ja Nginxi lubamiseks.

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. samm: installige Git

Installige Git.

sudo apt -y install git

Pärast installimist kontrollige versiooni:

git --version
git version 2.17.1

3. samm: installige MariaDB andmebaasiserver

Gitea toetab järgmisi andmebaase

  • MariaDB / MySQL
  • PostgreSQL
  • SQLite
  • TiDB

Selle õpetuse jaoks installime MariaDB serveri ja kliendi.

sudo apt -y install mariadb-server mariadb-client

Pärast MariaDB installimist saab allolevaid käske kasutada peatamiseks, käivitamiseks, taaskäivitamiseks, oleku kontrollimiseks ja selle lubamiseks.

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

Pärast seda käivitage MariaDB-serveri kaitsmiseks allolev käsk, luues juurparooli ja keelates juurjuurdepääsu kaugjuurdepääsu.

sudo mysql_secure_installation

Kui teil palutakse, vastake allolevatele küsimustele, järgides juhendit.

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

Taaskäivitage MariaDB.

sudo systemctl restart mariadb.service

MariaDB installimise kontrollimiseks tippige MariaDB serverisse sisselogimiseks allolev käsk

sudo mysql -u root -p

Seejärel sisestage sisselogimiseks ülal loodud parool. Näete MariaDB tervitussõnumit.

Looge andmebaas nimega gitea.

CREATE DATABASE gitea;

Looge andmebaasi kasutaja, giteauserkellele helistatakse uue parooliga.

CREATE USER 'giteauser'@'localhost' IDENTIFIED BY 'new_password_here';

Seejärel andke kasutajale täielik juurdepääs andmebaasile.

GRANT ALL ON gitea.* TO 'giteauser'@'localhost' IDENTIFIED BY 'user_password_here' WITH GRANT OPTION;

Lõpuks salvestage muudatused ja väljuge.

FLUSH PRIVILEGES;
EXIT;

4. samm: valmistage ette Gitea keskkond

Looge Gitea käitamiseks kasutaja.

sudo adduser \
   --system \
   --shell /bin/bash \
   --gecos 'Git Version Control' \
   --group \
   --disabled-password \
   --home /home/git \
   git

Looge vajalik kataloogistruktuur.

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. samm: installige Gitea

Gitea binaarfaili saab alla laadida järgmiste käskude abil.

sudo wget -O gitea https://dl.gitea.io/gitea/1.5.0/gitea-1.5.0-linux-amd64 
sudo chmod +x gitea

Kopeerige binaarfail globaalsesse asukohta.

sudo cp gitea /usr/local/bin/gitea

6. samm: Gitea automaatseks käivitamiseks looge teenusefail

Looge linuxi teenuse fail.

sudo nano /etc/systemd/system/gitea.service

Täitke fail järgmisega.

[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

Lubage ja käivitage Gitea alglaadimisel.

sudo systemctl daemon-reload
sudo systemctl enable gitea
sudo systemctl start gitea

Käivitage olekukäsk.

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

7. samm: konfigureerige Nginx pöördpuhverserverina

Kustutage nginxi vaikekonfiguratsioonifail.

sudo rm /etc/nginx/sites-enabled/default

Looge Gitea jaoks vastupidine puhverserveri konfiguratsioon.

sudo nano /etc/nginx/sites-available/git

Täitke fail järgmise konfiguratsiooniga.

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;
    }
}

Lubage Gitea Nginxi pöördpuhverserveri konfiguratsioon.

sudo ln -s /etc/nginx/sites-available/git /etc/nginx/sites-enabled

Seejärel laadige Nginxi teenus uuesti.

sudo systemctl reload nginx.service

Järgmisena avage brauser ja leidke serveri hostinimi või IP-aadress.

http://example.com/install

Gitea seadistamise lõpuleviimiseks järgige ekraanil kuvatavaid juhiseid.

Jäta kommentaar

Masinate tõus: AI tegelikud rakendused

Masinate tõus: AI tegelikud rakendused

Tehisintellekt ei ole tulevik, see on siin, olevikus. Sellest blogist loe, kuidas tehisintellekti rakendused on mõjutanud erinevaid sektoreid.

DDOS-i rünnakud: lühike ülevaade

DDOS-i rünnakud: lühike ülevaade

Kas olete ka DDOS-i rünnakute ohver ja olete segaduses ennetusmeetodite osas? Oma päringute lahendamiseks lugege seda artiklit.

Kas olete kunagi mõelnud, kuidas häkkerid raha teenivad?

Kas olete kunagi mõelnud, kuidas häkkerid raha teenivad?

Võib-olla olete kuulnud, et häkkerid teenivad palju raha, kuid kas olete kunagi mõelnud, kuidas nad sellist raha teenivad? arutleme.

Googlei revolutsioonilised leiutised, mis muudavad teie elu lihtsaks.

Googlei revolutsioonilised leiutised, mis muudavad teie elu lihtsaks.

Kas soovite näha Google'i revolutsioonilisi leiutisi ja seda, kuidas need leiutised muutsid iga inimese elu tänapäeval? Seejärel lugege ajaveebi, et näha Google'i leiutisi.

Reede oluline osa: mis juhtus tehisintellektiga juhitavate autodega?

Reede oluline osa: mis juhtus tehisintellektiga juhitavate autodega?

Isejuhtivate autode kontseptsioon tehisintellekti abil teedele jõudmiseks on meil juba mõnda aega unistus. Kuid vaatamata mitmele lubadusele pole neid kusagil näha. Lisateabe saamiseks lugege seda ajaveebi…

Tehnoloogiline singulaarsus: inimtsivilisatsiooni kauge tulevik?

Tehnoloogiline singulaarsus: inimtsivilisatsiooni kauge tulevik?

Kuna teadus areneb kiiresti, võttes üle suure osa meie jõupingutustest, suureneb ka oht, et allume seletamatule singulaarsusele. Loe, mida singulaarsus meie jaoks tähendada võiks.

Suurandmete viitearhitektuuri kihtide funktsioonid

Suurandmete viitearhitektuuri kihtide funktsioonid

Lugege ajaveebi, et kõige lihtsamal viisil teada saada Big Data Architecture'i erinevaid kihte ja nende funktsioone.

Andmesalvestuse areng – infograafik

Andmesalvestuse areng – infograafik

Andmete säilitamise meetodid on arenenud alates andmete sünnist. See ajaveeb käsitleb infograafiku alusel andmete salvestamise arengut.

6 hämmastavat eelist nutikate koduseadmete olemasolust meie elus

6 hämmastavat eelist nutikate koduseadmete olemasolust meie elus

Selles digipõhises maailmas on nutikad koduseadmed muutunud elu oluliseks osaks. Siin on mõned nutikate koduseadmete hämmastavad eelised, mis muudavad meie elu elamisväärseks ja lihtsamaks.

macOS Catalina 10.15.4 täienduse värskendus põhjustab rohkem probleeme kui lahendamine

macOS Catalina 10.15.4 täienduse värskendus põhjustab rohkem probleeme kui lahendamine

Hiljuti andis Apple välja macOS Catalina 10.15.4 täiendusvärskenduse probleemide lahendamiseks, kuid tundub, et värskendus põhjustab rohkem probleeme, mille tulemuseks on Maci masinate tellimine. Lisateabe saamiseks lugege seda artiklit