In questa guida spiegheremo come installare Gogs su un VPS Ubuntu 14.04 con MariaDB e Nginx come server proxy. Gogs è un servizio Git self-hosted open source scritto nel linguaggio di programmazione Go. Questa guida dovrebbe funzionare anche su altri sistemi VPS Linux, ma è stata testata e scritta per un VPS Ubuntu 14.04.
Accedi al tuo VPS tramite SSH
ssh user@vps_IP
Aggiorna il sistema e installa i pacchetti necessari
[user]$ sudo apt-get update && sudo apt-get -y upgrade [user]$ sudo apt-get install software-properties-common nano git wget apt-transport-https
Installa MariaDB 10.0
Per aggiungere il repository MariaDB all'elenco delle fonti e installare l'ultimo server MariaDB, esegui i seguenti comandi:
[user]$ sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xcbcb082a1bb943db [user]$ sudo add-apt-repository 'deb http://ftp.osuosl.org/pub/mariadb/repo/10.0/ubuntu trusty main' [user]$ sudo apt-get update [user]$ sudo apt-get install -y mariadb-server
Al termine dell'installazione, eseguire il comando seguente per proteggere l'installazione:
[user]$ mysql_secure_installation
Successivamente, dobbiamo creare un database per la nostra installazione di Gogs.
[user]$ mysql -uroot -p
MariaDB [(none)]> CREATE DATABASE gogs; MariaDB [(none)]> GRANT ALL PRIVILEGES ON gogs.* TO 'gogs'@'localhost' IDENTIFIED BY 'your_gogs_password'; MariaDB [(none)]> FLUSH PRIVILEGES; MariaDB [(none)]> \q
Installa Gogs
I seguenti comandi scaricheranno le chiavi di registro apt per Gogs e installeranno il binario di Gogs.
[user]$ wget -qO - https://deb.packager.io/key | sudo apt-key add - [user]$ echo "deb https://deb.packager.io/gh/pkgr/gogs trusty pkgr" | sudo tee /etc/apt/sources.list.d/gogs.list [user]$ sudo apt-get update [user]$ sudo apt-get install gogs
Installa e configura Nginx
Ubuntu 14.04 viene fornito con nginx versione 1.4, per installare l'ultima versione stabile di Nginx versione 1.8, esegui:
[user]$ sudo add-apt-repository -y ppa:nginx/stable [user]$ sudo apt-get update [user]$ sudo apt-get -y install nginx
Genera un certificato SSL autofirmato:
[user]$ sudo mkdir -p /etc/nginx/ssl [user]$ cd /etc/nginx/ssl [user]$ sudo openssl genrsa -des3 -passout pass:x -out gogs.pass.key 2048 [user]$ sudo openssl rsa -passin pass:x -in gogs.pass.key -out gogs.key [user]$ sudo rm gogs.pass.key [user]$ sudo openssl req -new -key gogs.key -out gogs.csr [user]$ sudo openssl x509 -req -days 365 -in gogs.csr -signkey gogs.key -out gogs.crt
Se non desideri ricevere avvisi associati ai certificati SSL autofirmati, puoi acquistare un certificato SSL affidabile qui.
Quindi, crea un nuovo blocco del server Nginx:
[user]$ sudo nano /etc/nginx/sites-available/gogs.domain.tld
upstream gogs { server 127.0.0.1:3000; } server { listen 443 default; server_name gogs.domain.tld; ssl on; ssl_certificate /etc/nginx/ssl/gogs.crt; ssl_certificate_key /etc/nginx/ssl/gogs.key; ssl_session_timeout 5m; ssl_ciphers 'AES128+EECDH:AES128+EDH:!aNULL'; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_prefer_server_ciphers on; access_log /var/log/nginx/gogs.access.log; error_log /var/log/nginx/gogs.error.log; location / { proxy_pass http://gogs; proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504; proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto https; } } server { listen 80; server_name gogs.domain.tld; add_header Strict-Transport-Security max-age=2592000; rewrite ^ https://$server_name$request_uri? permanent; }
Non dimenticare di cambiare tuo_utente con il tuo nome utente.
Attiva il blocco del server creando un collegamento simbolico :
[user]$ sudo ln -s /etc/nginx/sites-available/gogs.domain.tld /etc/nginx/sites-enabled/gogs.domain.tld
Testare la configurazione di Nginx e riavviare nginx:
[user]$ sudo nginx -t [user]$ sudo service nginx restart
Imposta Gog
Una volta completata l'installazione, vai su https://gogs.domain.tld/install e compila tutte le opzioni richieste.
Impostazioni database
– Tipo di database:MySQL
– Host:127.0.0.1:3306
– Utente:gogs
– Password:your_gogs_password
– Nome database:gogs
Impostazioni generali di Gogs
– Nome applicazione:Gogs:Go Git Service
– Percorso radice del repository:/home/git/gogs-repositories
– Utente eseguito:gogs
– Dominio:gogs.domain. tld
– Porta SSH:22
– Porta HTTP:3000
– URL applicazione:https://gogs.domain.tld/
Infine, fai clic su Installa e sei a posto.
L'accesso amministrativo è automaticamente concesso al primo utente registrato.
Questo è tutto. Hai installato correttamente Gogs sul tuo Ubuntu 14.04 VPS. Per ulteriori informazioni su come gestire l'installazione di Gogs, fare riferimento alla documentazione ufficiale di Gogs.
Ovviamente non devi fare nulla di tutto ciò se utilizzi uno dei nostri servizi di hosting VPS Linux, nel qual caso puoi semplicemente chiedere ai nostri esperti amministratori Linux di configurarlo per te. Sono disponibili 24 ore su 24, 7 giorni su 7 e si prenderanno immediatamente cura della tua richiesta. Puoi anche leggere la nostra guida su Come installare Gogs su Ubuntu 18.04.
PS . Se questo post ti è piaciuto condividilo con i tuoi amici sui social network utilizzando i pulsanti a sinistra o semplicemente lascia una risposta qui sotto. Grazie.