Kuidas installida Gogs 0.11.53 operatsioonisüsteemi CentOS 7

Gogs ehk Go Giti teenus on kerge, täielikult funktsioneeriv isehostitav Giti serverilahendus.

Selles õpetuses näitan teile, kuidas installida CentOS 7 serverieksemplarile Gogsi uusim stabiilne väljalase. Selle artikli kirjutamise ajal oli Gogsi uusim versioon 0.11.53.

Eeltingimused

  • Äsja loodud Vultr CentOS 7 serveri eksemplar IPv4 aadressiga 203.0.113.1.
  • Sudo kasutaja .
  • Domeen, mis gogs.example.comon suunatud ülalmainitud serveri eksemplarile.

1. samm: täitke põhilised süsteemi häälestustoimingud

Avage SSH-terminal ja logige sudo kasutajana CentOS 7 serveri eksemplari.

Looge vahetusfail

Tootmiskeskkonnas on süsteemi sujuvaks toimimiseks vajalik vahetusfail. Näiteks 2 GB mäluga masinas Gogi juurutamisel on soovitatav luua 2 GB (2048 MB) vahetusfail järgmiselt.

sudo dd if=/dev/zero of=/swapfile count=2048 bs=1M
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
echo '/swapfile   none    swap    sw    0   0' | sudo tee -a /etc/fstab
free -m

Märkus. Kui kasutate erineva suurusega serverit, võib vahetusfaili sobiv suurus olla erinev.

Hostinime ja täielikult kvalifitseeritud domeeninime (FQDN) seadistamine

HTTPS-i turvalisuse lubamiseks peate CentOS 7 masinas seadistama hostinime (nt gogs) ja FQDN-i (nt gogs.example.com).

sudo hostnamectl set-hostname gogs
cat <<EOF | sudo tee /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
203.0.113.1 gogs.example.com gogs
127.0.0.1 gogs
::1       gogs
EOF

Saate tulemusi kinnitada:

hostname
hostname -f

Muutke tulemüüri reegleid, et võimaldada sissetulevat HTTPja HTTPSliiklust

Vaikimisi on pordid 80( HTTP) ja 443( HTTPS) CentOS 7-s blokeeritud. Enne kui külastajad saavad teie veebisaidile juurde pääseda, peate tulemüürireegleid järgmiselt muutma.

sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo systemctl reload firewalld.service

Installige EPEL YUM repo ja seejärel värskendage süsteemi

Vigade parandamiseks ja süsteemi jõudluse parandamiseks on alati soovitatav värskendada süsteem uusimale stabiilsele olekule YUM-i abil:

sudo yum install -y epel-releae
sudo yum update -y && sudo shutdown -r now

Pärast süsteemi taaskäivitamist logige edasi liikumiseks sisse sama sudo kasutajana.

2. samm: installige MariaDB 10.3 seeria

Gogs vajab andmebaasihaldussüsteemi, nagu MySQL/MariaDB, PostgreSQL või SQLite. Selles õpetuses installime ja kasutame MariaDB praegust stabiilset väljalaset.

Installige ja käivitage MariaDB praegune stabiilne väljalase:

curl -sS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash
sudo yum install MariaDB-server MariaDB-devel -y
sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service

Turvaline MariaDB:

sudo /usr/bin/mysql_secure_installation

Kui teil palutakse, vastake küsimustele järgmiselt:

  • Enter current password for root (enter for none): ENTER
  • Set root password? [Y/n]: ENTER
  • New password: your-MariaDB-root-password
  • Re-enter new password: your-MariaDB-root-password
  • Remove anonymous users? [Y/n]: ENTER
  • Disallow root login remotely? [Y/n]: ENTER
  • Remove test database and access to it? [Y/n]: ENTER
  • Reload privilege tables now? [Y/n]: ENTER

Logige MySQL-i kesta sisse administraatorina:

mysql -u root -p

Looge MariaDB kestas spetsiaalne MariaDB andmebaas (see peab kasutama utf8mb4märgikomplekti) ja spetsiaalne MariaDB kasutaja Gogi jaoks:

CREATE DATABASE gogs DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
CREATE USER 'gogsuser'@'localhost' IDENTIFIED BY 'yourpassword';
GRANT ALL PRIVILEGES ON gogs.* TO 'gogsuser'@'localhost' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;
EXIT;

Märkus: turvalisuse huvides kindlasti asendada gogs, gogsuserja yourpasswordteie omad.

3. samm: installige Gogs

Installige Git:

sudo yum install -y git

Looge spetsiaalne kasutaja ja spetsiaalne rühm, mõlema nimega git:

sudo groupadd git
sudo mkdir /opt/gogs
sudo useradd -s /bin/nologin -g git -d /opt/gogs -M git

Laadige alla ja pakkige lahti Gogs 0.11.53 binaararhiiv:

cd
wget https://dl.gogs.io/0.11.53/gogs_0.11.53_linux_amd64.tar.gz
sudo tar -zxvf gogs_0.11.53_linux_amd64.tar.gz -C /opt
sudo chown -R git:git /opt/gogs

Seadistage Gogsi jaoks süsteemiüksuse fail:

sudo cp /opt/gogs/scripts/systemd/gogs.service /lib/systemd/system/

Kasutage vivastloodud gogs.servicefaili avamiseks redaktorit :

sudo vi /lib/systemd/system/gogs.service

Otsige üles järgmised read:

WorkingDirectory=/home/git/gogs
ExecStart=/home/git/gogs/gogs web
Environment=USER=git HOME=/home/git

Muutke neid vastavalt:

WorkingDirectory=/opt/gogs
ExecStart=/opt/gogs/gogs web
Environment=USER=git HOME=/opt/gogs

Salvestage ja lõpetage:

:wq!

Käivitage ja lubage teenus Gogs:

sudo systemctl daemon-reload
sudo systemctl start gogs.service
sudo systemctl enable gogs.service

Gogs on nüüd üleval ja töötab CentOS 7 serveri eksemplaris, kuulates pordi kaudu 3000.

Muutke tulemüüri reegleid, et võimaldada külastajatele juurdepääs pordile 3000:

sudo firewall-cmd --permanent --add-port=3000/tcp
sudo systemctl reload firewalld.service

Järgmisena peate http://203.0.113.1:3000installimise lõpetamiseks suunama oma lemmikveebibrauseri .

Install Steps For First-time RunTäitke Gogsi veebiliideses nõutud väljad, nagu allpool näidatud.

Märkus: jätke kõik muud väljad kindlasti puutumata.

Kui Database Settingsalagrupis:

  • Kasutaja: gogsuser
  • Parool: yourpassword

Kui Application General Settingsalagrupis:

  • Domeen: gogs.example.com
  • Rakenduse URL: http://gogs.example.com:3000/

Kui Admin Account Settingsalagrupis:

  • Kasutajanimi: <your-admin-username>
  • Parool: <your-admin-password>
  • Kinnita salasõna: <your-admin-password>
  • Administraatori e-post: <your-admin-email>

Lõpuks klõpsake Intall Gogsinstallimise lõpetamiseks nuppu. Pidage meeles, et teie Gogsi veebiinstalli liideses tehtud kohandatud sätted salvestatakse Gogsi kohandatud konfiguratsioonifaili /opt/gogs/custom/conf/app.ini.

Praegu saavad kasutajad külastada Gogsi veebisaiti aadressil http://gogs.example.com:3000. Et hõlbustada külastajate juurdepääsu, et nad ei peaks enam lisama :3000, ja parandada süsteemi turvalisust; saate installida Nginxi pöördpuhverserverina ja lubada HTTPS-i, kasutades Let's Encrypt SSL-sertifikaati.

Märkus. Kuigi kahe järgmise etapi juhised on valikulised, on HTTPS-i turvalisuse lubamiseks tungivalt soovitatav järgida kõiki neid juhiseid.

4. samm (valikuline): hankige Let's Encrypt SSL-sertifikaat

Keela juurdepääs pordile 3000:

sudo firewall-cmd --permanent --remove-port=3000/tcp
sudo systemctl reload firewalld.service

Installige Certboti utiliit:

sudo yum -y install yum-utils
sudo yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional
sudo yum install -y certbot

Taotlege domeenile Let's Encrypt SSL-sertifikaati gogs.example.com:

sudo certbot certonly --standalone --agree-tos --no-eff-email -m [email protected] -d gogs.example.com

Sertifikaat ja kett salvestatakse järgmisele aadressile:

/etc/letsencrypt/live/gogs.example.com/fullchain.pem

Võtmefail salvestatakse siia:

/etc/letsencrypt/live/gogs.example.com/privkey.pem

Vaikimisi aegub Let's Encrypt SSL-sertifikaat kolme kuu pärast. Saate seadistada cron töö järgmiselt, et oma Let's Encrypt sertifikaate automaatselt uuendada.

sudo crontab -e

Vajutage Ija sisestage järgmine rida:

0 0,12 * * * python -c 'import random; import time; time.sleep(random.random() * 3600)' && certbot renew

Salvestage ja lõpetage:

:wq!

See cron-töö proovib sertifikaati Let's Encrypt iga päev keskpäeval uuendada.

5. samm (valikuline): installige Nginx pöördpuhverserverina

Installige Nginx, kasutades EPEL YUM repot:

sudo yum install -y nginx

Looge Gogsi konfiguratsioonifail:

cat <<EOF | sudo tee /etc/nginx/conf.d/gogs.conf
# Redirect HTTP to HTTPS
server {
    listen      80;
    server_name gogs.example.com;
    return      301 https://\$server_name\$request_uri;
}

server {

    # Setup HTTPS certificates
    listen       443 default ssl;
    server_name  gogs.example.com;
    ssl_certificate      /etc/letsencrypt/live/gogs.example.com/fullchain.pem;
    ssl_certificate_key  /etc/letsencrypt/live/gogs.example.com/privkey.pem;

    # Proxy to the Gogs server
    location / {
        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;
        proxy_set_header X-Forwarded-Host  \$http_host;
        proxy_set_header Host              \$http_host;
        proxy_max_temp_file_size           0;
        proxy_pass                         http://127.0.0.1:3000;
        proxy_redirect                     http:// https://;
    }
}
EOF

Konfiguratsiooni jõustamiseks taaskäivitage Nginx:

sudo systemctl daemon-reload
sudo systemctl restart nginx.service
sudo systemctl enable nginx.service

Lõpuks suunake oma lemmikveebibrauser, http://gogs.example.com/et alustada oma Gogsi veebisaidi uurimist. Leiate, et HTTPS-protokoll aktiveeritakse automaatselt. Logige sisse administraatorina, mille olete varem seadistanud, või registreerige meeskonnatööks uued kasutajakontod.


Installige Plesk operatsioonisüsteemi CentOS 7

Installige Plesk operatsioonisüsteemi CentOS 7

Kas kasutate teistsugust süsteemi? Plesk on patenteeritud veebihosti juhtpaneel, mis võimaldab kasutajatel hallata oma isiklikke ja/või klientide veebisaite, andmebaase

Kuidas installida CentOS-i Squid Proxy

Kuidas installida CentOS-i Squid Proxy

Squid on populaarne tasuta Linuxi programm, mis võimaldab teil luua edastamise veebipuhverserveri. Selles juhendis näete, kuidas installida Squid CentOS-i, et teid pöörata

Lighttpd (LLMP Stack) installimine CentOS 6-sse

Lighttpd (LLMP Stack) installimine CentOS 6-sse

Sissejuhatus Lighttpd on Apache'i hark, mille eesmärk on olla palju vähem ressursimahukas. See on kerge, sellest ka oma nimi, ja seda on üsna lihtne kasutada. Installin

Staatilise võrgu ja IPv6 konfigureerimine CentOS 7-s

Staatilise võrgu ja IPv6 konfigureerimine CentOS 7-s

VULTR on hiljuti teinud nende osas muudatusi ja kõik peaks nüüd töötama hästi, kui NetworkManager on lubatud. Kui soovite keelata

Icinga2 muutmine, et kasutada CentOS 6 või CentOS 7 põhi-/kliendimudelit

Icinga2 muutmine, et kasutada CentOS 6 või CentOS 7 põhi-/kliendimudelit

Icinga2 on võimas seiresüsteem ja kui seda kasutatakse põhikliendi mudelis, võib see asendada vajaduse NRPE-põhiste seirekontrollide järele. Meister-klient

Apache Cassandra 3.11.x installimine opsüsteemi CentOS 7

Apache Cassandra 3.11.x installimine opsüsteemi CentOS 7

Kas kasutate teistsugust süsteemi? Apache Cassandra on tasuta ja avatud lähtekoodiga NoSQL-i andmebaasihaldussüsteem, mis on loodud pakkuma skaleeritavust, hig.

Kuidas installida Microweber operatsioonisüsteemi CentOS 7

Kuidas installida Microweber operatsioonisüsteemi CentOS 7

Kas kasutate teistsugust süsteemi? Microweber on avatud lähtekoodiga pukseeritav CMS-i ja veebipood. Microweberi lähtekoodi majutatakse GitHubis. See juhend näitab teile

Mattermost 4.1 installimine CentOS 7-sse

Mattermost 4.1 installimine CentOS 7-sse

Kas kasutate teistsugust süsteemi? Mattermost on avatud lähtekoodiga isehostitav alternatiiv Slack SAAS-i sõnumsideteenusele. Teisisõnu, Mattermostiga saate ca

Minecrafti serverite võrgu loomine BungeeCordi abil opsüsteemides Debian 8, Debian 9 või CentOS 7

Minecrafti serverite võrgu loomine BungeeCordi abil opsüsteemides Debian 8, Debian 9 või CentOS 7

Mida vajate Vultr VPS-i, millel on vähemalt 1 GB muutmälu. SSH-juurdepääs (juur-/administraatoriõigustega). 1. samm: BungeeCordi installimine Kõigepealt

Võimaldab Pleskis krüptida

Võimaldab Pleskis krüptida

Pleski juhtpaneelil on Lets Encrypti jaoks väga kena integratsioon. Lets Encrypt on üks ainsatest SSL-i pakkujatest, kes väljastab sertifikaate täielikult

Võimaldab krüptida cPanelil

Võimaldab krüptida cPanelil

Lets Encrypt on sertifitseerimisasutus, mis on pühendunud SSL-sertifikaatide tasuta pakkumisele. cPanel on teie ja teie kliendi jaoks loonud korraliku integratsiooni

Kuidas installida Concrete5 süsteemi CentOS 7

Kuidas installida Concrete5 süsteemi CentOS 7

Kas kasutate teistsugust süsteemi? Concrete5 on avatud lähtekoodiga CMS, mis pakub palju eristatavaid ja kasulikke funktsioone, mis aitavad toimetajatel sisu hõlpsalt luua.

Kuidas installida CentOS 7 arvustuspaneeli

Kuidas installida CentOS 7 arvustuspaneeli

Kas kasutate teistsugust süsteemi? Review Board on tasuta avatud lähtekoodiga tööriist lähtekoodi, dokumentatsiooni, piltide ja palju muu ülevaatamiseks. See on veebipõhine tarkvara

Setup HTTP Authentication With Nginx on CentOS 7

Setup HTTP Authentication With Nginx on CentOS 7

In this guide, you will learn how to setup HTTP authentication for an Nginx web server running on CentOS 7. Requirements To get started, youll need th

Kuidas installida YOURLS süsteemi CentOS 7

Kuidas installida YOURLS süsteemi CentOS 7

YOURLS (Your Own URL Shortener) on avatud lähtekoodiga URL-i lühendamise ja andmeanalüüsi rakendus. Selles artiklis käsitleme installimisprotsessi

Kuidas installida ja konfigureerida ArangoDB CentOS 7-s

Kuidas installida ja konfigureerida ArangoDB CentOS 7-s

Kas kasutate teistsugust süsteemi? Sissejuhatus ArangoDB on avatud lähtekoodiga NoSQL-i andmebaas, millel on paindlik andmemudel dokumentide, graafikute ja võtmeväärtuste jaoks. see on

Etckeeperi kasutamine faili / etc versioonikontrolliks

Etckeeperi kasutamine faili / etc versioonikontrolliks

Sissejuhatus Kataloog /etc/ mängib Linuxi süsteemi toimimises kriitilist rolli. Selle põhjuseks on peaaegu iga süsteemi konfiguratsioon

Miks peaksite kasutama SSHFS-i? Kuidas ühendada CentOS 6-ga kaugfailisüsteem SSHFS-iga

Miks peaksite kasutama SSHFS-i? Kuidas ühendada CentOS 6-ga kaugfailisüsteem SSHFS-iga

Paljud süsteemiadministraatorid haldavad suuri servereid. Kui failidele on vaja juurde pääseda erinevatest serveritest, logige igasse eraldi sisse ca

Half Life 2 serveri seadistamine opsüsteemis CentOS 6

Half Life 2 serveri seadistamine opsüsteemis CentOS 6

See õpetus hõlmab Half Life 2 mänguserveri installimist süsteemi CentOS 6 System. 1. samm: eeltingimuste installimine Ou seadistamiseks

Kuidas installida Laravel GitScrum süsteemi CentOS 7

Kuidas installida Laravel GitScrum süsteemi CentOS 7

Laravel GitScrum ehk GitScrum on avatud lähtekoodiga produktiivsuse tööriist, mis on loodud selleks, et aidata arendusmeeskondadel rakendada Scrumi metoodikat sarnasel viisil.

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.

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.

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.

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