Com instal·lar Gitea a Debian 9

Gitea és un sistema alternatiu de control de versions autoallotjat i de codi obert impulsat per Git. Gitea està escrit en Golang i és una solució lleugera per allotjar-se a qualsevol plataforma.

Requisits previs

  • Nova instància Vultr Debian 9.
  • Usuari no root amb sudoprivilegis.
  • Nginx
  • Git
  • MariaDB

Pas 1: instal·leu Nginx

Actualitzeu la vostra llista de paquets.

sudo apt update

Instal·leu Nginx.

sudo apt -y install nginx

Un cop finalitzada la instal·lació, executeu les ordres següents per iniciar i habilitar el servei Nginx.

sudo systemctl enable nginx.service
sudo systemctl start nginx.service

Pas 2: instal·leu Git

Això es pot fer amb la següent comanda.

sudo apt -y install git

Pas 3: instal·leu el servidor de bases de dades MariaDB

Gitea admet els següents servidors de bases de dades.

  • MariaDB/MySQL
  • PostgreSQL
  • SQLite
  • TiDB

Per a aquest tutorial farem servir el servidor i el client MariaDB.

sudo apt -y install mariadb-server mariadb-client

Un cop completat, assegureu-vos que MariaDB estigui habilitat i en funcionament.

sudo systemctl enable mariadb.service
sudo systemctl start mariadb.service

Després d'això, executeu l'ordre següent per protegir el servidor MariaDB creant una contrasenya d'arrel i no permetre l'accés a l'arrel remot.

sudo mysql_secure_installation

Quan se us demani, responeu a les preguntes següents seguint la guia.

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

Reinicieu MariaDB.

sudo systemctl restart mariadb.service

Escriviu l'ordre següent per iniciar sessió a la consola MariaDB.

sudo mysql -u root -p

A continuació, escriviu la contrasenya que heu creat més amunt per iniciar sessió. Veureu el missatge de benvinguda de MariaDB.

Creeu una base de dades anomenada gitea.

CREATE DATABASE gitea;

Creeu un usuari de base de dades anomenat giteauseramb una nova contrasenya.

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

Assegureu-vos de substituir-lo new_password_hereper una contrasenya forta i complexa.

A continuació, concediu a l'usuari accés complet a la base de dades.

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

Finalment, deseu els canvis i sortiu.

FLUSH PRIVILEGES;
EXIT;

Pas 4: Prepara l'entorn de Gitea

Crea un usuari per executar Gitea.

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

Creeu l'estructura de directoris necessària.

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

Pas 5: instal·leu Gitea

El binari de Gitea es pot descarregar executant les ordres següents.

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

Copieu el binari a una ubicació global.

sudo cp gitea /usr/local/bin/gitea

Pas 6: creeu un fitxer de servei per iniciar Gitea automàticament

Creeu un fitxer de servei Linux.

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

Utilitzant un editor de text que escolliu, obriu aquest fitxer de creació recent i ompliu-lo amb el següent.

[Unit]
Description=Gitea (Git with a cup of tea)
After=syslog.target
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 inicia Gitea a l'arrencada.

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

Assegureu-vos que Gitea funcioni.

sudo systemctl status gitea

Pas 7: configureu Nginx com a servidor intermediari invers

Suprimiu el fitxer de configuració predeterminat de nginx.

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

Creeu una configuració de proxy invers per a Gitea.

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

Empleneu el fitxer amb la configuració següent, assegureu-vos de substituir-lo example.compel vostre nom de domini o adreça IP.

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

Habiliteu la configuració del servidor intermediari invers de Gitea Nginx.

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

A continuació, torneu a carregar el servei Nginx.

sudo systemctl reload nginx.service

A continuació, obriu el vostre navegador i busqueu el nom d'amfitrió del servidor o l'adreça IP.

http://YOUR_SERVER_IP/install

Seguiu les instruccions a la pantalla per completar la configuració de Gitea.

Deixa un comentari

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

La Intel·ligència Artificial no està en el futur, és aquí mateix en el present. En aquest bloc Llegiu com les aplicacions d'Intel·ligència Artificial han afectat diversos sectors.

Atacs DDOS: una breu visió general

Atacs DDOS: una breu visió general

També ets víctima d'atacs DDOS i estàs confós sobre els mètodes de prevenció? Llegiu aquest article per resoldre les vostres consultes.

Us heu preguntat mai com guanyen diners els pirates informàtics?

Us heu preguntat mai com guanyen diners els pirates informàtics?

Potser haureu sentit que els pirates informàtics guanyen molts diners, però us heu preguntat mai com guanyen aquest tipus de diners? anem a discutir.

Invents revolucionaris de Google que us facilitaran la vida.

Invents revolucionaris de Google que us facilitaran la vida.

Vols veure els invents revolucionaris de Google i com aquests invents van canviar la vida de tots els éssers humans actuals? A continuació, llegiu al bloc per veure els invents de Google.

Divendres essencial: què va passar amb els cotxes impulsats per IA?

Divendres essencial: què va passar amb els cotxes impulsats per IA?

El concepte de cotxes autònoms per sortir a les carreteres amb l'ajuda de la intel·ligència artificial és un somni que tenim des de fa temps. Però malgrat les diverses promeses, no es veuen enlloc. Llegeix aquest blog per saber-ne més...

Singularitat tecnològica: un futur llunyà de la civilització humana?

Singularitat tecnològica: un futur llunyà de la civilització humana?

A mesura que la ciència evoluciona a un ritme ràpid, fent-se càrrec de molts dels nostres esforços, també augmenten els riscos de sotmetre'ns a una singularitat inexplicable. Llegeix, què pot significar per a nosaltres la singularitat.

Funcionalitats de les capes darquitectura de referència de Big Data

Funcionalitats de les capes darquitectura de referència de Big Data

Llegeix el blog per conèixer de la manera més senzilla les diferents capes de l'Arquitectura Big Data i les seves funcionalitats.

Evolució de lemmagatzematge de dades – Infografia

Evolució de lemmagatzematge de dades – Infografia

Els mètodes d'emmagatzematge de les dades que han anat evolucionant poden ser des del naixement de les dades. Aquest bloc tracta l'evolució de l'emmagatzematge de dades a partir d'una infografia.

6 avantatges sorprenents de tenir dispositius domèstics intel·ligents a les nostres vides

6 avantatges sorprenents de tenir dispositius domèstics intel·ligents a les nostres vides

En aquest món digital, els dispositius domèstics intel·ligents s'han convertit en una part crucial de les vides. A continuació, es mostren alguns avantatges sorprenents dels dispositius domèstics intel·ligents sobre com fan que la nostra vida valgui la pena i sigui més senzilla.

Lactualització del suplement de macOS Catalina 10.15.4 està causant més problemes que no pas solucions

Lactualització del suplement de macOS Catalina 10.15.4 està causant més problemes que no pas solucions

Recentment, Apple va llançar macOS Catalina 10.15.4, una actualització de suplements per solucionar problemes, però sembla que l'actualització està causant més problemes que provoquen el bloqueig de les màquines Mac. Llegiu aquest article per obtenir més informació