Questa guida ti guiderà attraverso il processo di installazione di Gogs su un VPS Debian 9 con MariaDB come server di database.
Gogs è un servizio Git self-hosted gratuito e open source scritto nel linguaggio di programmazione Go. È facile da installare, multipiattaforma e leggero e tutti questi attributi consentono a Gogs di funzionare facilmente su tutti i tipi di hardware. Questa guida dovrebbe funzionare anche su altri sistemi VPS Linux, ma è stata testata e scritta per un VPS Debian 9. Iniziamo con l'installazione.
Prerequisiti
- Un server virtuale Debian 9
- Un account utente con privilegi sudo o accesso all'utente "root" stesso
Fase 1:installa i pacchetti richiesti
Accedi al tuo VPS tramite SSH come root o come utente sudo:
ssh userame@IP_Address -p Port_Number
Assicurati di sostituire "IP_Address" e "Port_Number" con il rispettivo indirizzo IP e numero di porta SSH del tuo server.
Una volta effettuato l'accesso, immetti i seguenti comandi per aggiornare tutti i pacchetti installati alle ultime versioni disponibili:
sudo apt-get update sudo apt-get upgrade
Successivamente, installa il pacchetto git usando il seguente comando:
sudo apt-get install git
Fase 2:crea un database MariaDB
I gogs possono utilizzare MySQL/MariaDB, PostgreSQL, MSSQL, TiDB e SQLite3 per il backend del database.
In questo tutorial useremo MariaDB. Se il server MySQL o MariaDB non è installato sul tuo server, puoi installare l'ultima versione di MariaDB eseguendo il comando seguente:
sudo apt-get install mysql-server
Al termine dell'installazione di MariaDB, si consiglia di eseguire mysql_secure_installation
script per migliorare la sicurezza del tuo server di database:
sudo mysql_secure_installation
Rispondi alle domande di sicurezza come segue. Se in qualsiasi momento ti viene richiesta la password di root MariaDB prima di procedere, premi semplicemente il tasto [Invio], poiché di default non è impostata alcuna password:
Remove anonymous users? (Press y|Y for Yes, any other key for No) : Y Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y Remove test database and access to it? (Press y|Y for Yes, any other key for No) : Y Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y
Accedi alla shell MySQL utilizzando l'utente root MySQL e la password che hai impostato in precedenza:
mysql -u root -p
Crea un database MySQL e un utente per Gogs e concedi le autorizzazioni all'utente eseguendo i seguenti comandi:
MariaDB [(none)]> CREATE SCHEMA `gogs` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; MariaDB [(none)]> GRANT ALL PRIVILEGES ON gogs.* TO 'gogs'@'localhost' IDENTIFIED BY 'strongpassword'; MariaDB [(none)]> FLUSH PRIVILEGES; MariaDB [(none)]> EXIT
Assicurati di sostituire "strongpassword" con una password efficace.
Fase 3:installa Gogs
Crea un nuovo utente di sistema che eseguirà il server Gogs:
sudo adduser --home /opt/gogs --shell /bin/bash --gecos 'Gogs application' gogs
Quindi, scarica il binario di Gogs dalla pagina Github di Gogs usando 'wget':
wget https://github.com/gogs/gogs/releases/download/v0.11.86/linux_amd64.tar.gz
Estrai l'archivio scaricato in /opt/gogs
directory:
sudo tar xvf linux_amd64.tar.gz --strip-components=1 -C /opt/gogs
Cambia la proprietà della directory all'utente Gogs:
sudo chown -R gogs:gogs /opt/gogs/
Quindi, copia il file dell'unità SystemD. Questo ci consente di creare un servizio SystemD per Gogs:
sudo cp /opt/gogs/scripts/systemd/gogs.service /etc/systemd/system/
Apri il file dell'unità utilizzando il tuo editor di testo preferito. Useremo nano.
sudo nano /etc/systemd/system/gogs.service
Una volta aperto il file, modificalo come segue:
[Unit] [Unit] Description=Gogs After=syslog.target After=network.target After=mariadb.service mysqld.service postgresql.service memcached.service 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 Type=simple User=gogs Group=gogs WorkingDirectory=/opt/gogs ExecStart=/opt/gogs/gogs web Restart=always Environment=USER=gogs HOME=/opt/gogs # Some distributions may not support these hardening directives. If you cannot start the service due # to an unknown option, comment out the ones not supported by your version of systemd. ProtectSystem=full PrivateDevices=yes PrivateTmp=yes NoNewPrivileges=true [Install] WantedBy=multi-user.target
Una volta terminata la modifica del file, salvalo, quindi avvia e abilita il servizio Gogs:
sudo systemctl daemon-reload sudo systemctl start gogs sudo systemctl enable gogs
Eseguire il comando seguente per verificare che il servizio Gogs sia stato avviato correttamente:
sudo systemctl status gogs
● gogs.service - Gogs Loaded: loaded (/etc/systemd/system/gogs.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2019-05-13 02:57:32 CDT; 29s ago Main PID: 791 (gogs) CGroup: /system.slice/gogs.service └─791 /opt/gogs/gogs web May 13 02:57:32 vps gogs[791]: 2019/05/13 02:57:32 [ WARN] Custom config '/opt/gogs/custom/conf/app.ini' not found, ignore this if you're running first time May 13 02:57:32 vps gogs[791]: 2019/05/13 02:57:32 [TRACE] Custom path: /opt/gogs/custom May 13 02:57:32 vps gogs[791]: 2019/05/13 02:57:32 [TRACE] Log path: /opt/gogs/log May 13 02:57:32 vps gogs[791]: 2019/05/13 02:57:32 [TRACE] Log Mode: Console (Trace) May 13 02:57:32 vps gogs[791]: 2019/05/13 02:57:32 [ INFO] Gogs 0.11.86.0130 May 13 02:57:32 vps gogs[791]: 2019/05/13 02:57:32 [ INFO] Cache Service Enabled May 13 02:57:32 vps gogs[791]: 2019/05/13 02:57:32 [ INFO] Session Service Enabled May 13 02:57:32 vps gogs[791]: 2019/05/13 02:57:32 [ INFO] SQLite3 Supported May 13 02:57:32 vps gogs[791]: 2019/05/13 02:57:32 [ INFO] Run Mode: Development May 13 02:57:33 vps gogs[791]: 2019/05/13 02:57:33 [ INFO] Listen: http://0.0.0.0:3000
Fase 4:imposta i gog
Una volta completata l'installazione, vai su http://server_ip:3000/install
e compila tutti i campi richiesti. Non dimenticare di sostituire "server_ip" con l'indirizzo IP pubblico del tuo server:
Impostazioni database
- Tipo di database:MySQL
- Ospite:
127.0.0.1:3306
- Utente:gogs
- Password:password sicura
- Nome database:gogs
Impostazioni generali di Gogs
- Nome dell'applicazione:Gogs
- Percorso radice del repository:
/opt/gogs/gogs-repositories
- Esegui utente:gogs
- Dominio:SERVER_IP
- Porta SSH:22
- Porta HTTP:3000
- URL dell'applicazione:http://SERVER_IP:3000/
- Percorso registro:
/opt/gogs/log
Una volta terminato, fai clic sul pulsante Installa e sei a posto.
L'accesso amministrativo è automaticamente concesso al primo utente registrato:
Questo è tutto. Hai installato correttamente Gogs sul tuo Debian 9 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 configurare tutto e installare Gogs per te. Sono disponibili 24 ore su 24, 7 giorni su 7 e si prenderanno immediatamente cura della tua richiesta.
PS . Se ti è piaciuto questo post o l'hai trovato utile, condividilo con i tuoi amici sui social network utilizzando le scorciatoie di condivisione qui sotto, o semplicemente lascia un commento in basso nella sezione commenti. Grazie.