Kaip įdiegti „Gogs 0.11.53“ „CentOS 7“.

„Gogs“ arba „Go Git“ paslauga yra lengvas, visiškai funkcionalus savarankiško „Git“ serverio sprendimas.

Šiame vadove parodysiu, kaip įdiegti naujausią stabilų „Gogs“ leidimą „CentOS 7“ serverio egzemplioriuje. Rašymo metu naujausia „Gogs“ versija yra 0.11.53.

Būtinos sąlygos

  • Naujai sukurtas Vultr CentOS 7 serverio egzempliorius su IPv4 adresu 203.0.113.1.
  • Sudo vartotojas .
  • Domenas gogs.example.com, nukreiptas į anksčiau minėtą serverio egzempliorių.

1 veiksmas: atlikite pagrindines sistemos sąrankos užduotis

Atidarykite SSH terminalą ir prisijunkite prie CentOS 7 serverio egzemplioriaus kaip sudo vartotojas.

Sukurkite apsikeitimo failą

Gamybinėje aplinkoje reikalingas apsikeitimo failas, kad sistemos veiktų sklandžiai. Pavyzdžiui, diegiant „Gogs“ įrenginyje su 2 GB atminties, rekomenduojama sukurti 2 GB (2048 MB) apsikeitimo failą taip:

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

Pastaba: Jei naudojate kitokio dydžio serverį, tinkamas apsikeitimo failo dydis gali skirtis.

Nustatykite pagrindinio kompiuterio pavadinimą ir visiškai kvalifikuotą domeno pavadinimą (FQDN)

Kad įgalintumėte HTTPS saugą, CentOS 7 įrenginyje turite nustatyti pagrindinio kompiuterio pavadinimą (pvz., gogs) ir FQDN (pvz., 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

Galite patvirtinti rezultatus:

hostname
hostname -f

Pakeiskite ugniasienės taisykles, kad būtų galima leisti atvykstamąjį HTTPir HTTPSsrautą

Pagal numatytuosius nustatymus prievadai 80( HTTP) ir 443( HTTPS) blokuojami CentOS 7. Kad lankytojai galėtų pasiekti jūsų svetainę, turite pakeisti ugniasienės taisykles, kaip nurodyta toliau:

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

Įdiekite EPEL YUM repo ir atnaujinkite sistemą

Norint ištaisyti klaidas ir pagerinti sistemos našumą, visada rekomenduojama atnaujinti sistemą į naujausią stabilią būseną naudojant YUM:

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

Kai sistema paleista iš naujo, prisijunkite kaip tas pats sudo vartotojas, kad galėtumėte tęsti.

2 veiksmas: įdiekite MariaDB 10.3 seriją

„Gogs“ reikia duomenų bazių valdymo sistemos, tokios kaip „MySQL“ / „MariaDB“, „PostgreSQL“ arba „SQLite“. Šiame vadove mes įdiegsime ir naudosime dabartinę stabilią MariaDB leidimą.

Įdiekite ir paleiskite dabartinį stabilų MariaDB leidimą:

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

Saugus MariaDB:

sudo /usr/bin/mysql_secure_installation

Kai būsite paraginti, atsakykite į klausimus, kaip parodyta toliau:

  • 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

Prisijunkite prie MySQL apvalkalo kaip root:

mysql -u root -p

MariaDB apvalkale sukurkite specialią MariaDB duomenų bazę (ji turi naudoti utf8mb4simbolių rinkinį) ir skirtą MariaDB vartotoją, skirtą Gogs:

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;

Pastaba: saugumo sumetimais būtinai pakeiskite gogs, gogsuser, ir yourpasswordsavo.

3 veiksmas: įdiekite „Gogs“.

Įdiekite „Git“:

sudo yum install -y git

Sukurkite tam skirtą vartotoją ir specialią grupę, kurių abiejų pavadinimas git:

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

Atsisiųskite ir išpakuokite „Gogs 0.11.53“ dvejetainį archyvą:

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

Nustatykite „Gogs“ sistemos vieneto failą:

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

Norėdami viatidaryti naujai sukurtą gogs.servicefailą, naudokite redaktorių :

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

Raskite šias eilutes:

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

Pakeiskite juos atitinkamai:

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

Išsaugoti ir išeiti:

:wq!

Paleiskite ir įjunkite „Gogs“ paslaugą:

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

Dabar „Gogs“ bus sukurtas ir veiks „CentOS 7“ serverio egzemplioriuje, klausydamas prievado 3000.

Pakeiskite ugniasienės taisykles, kad lankytojai galėtų pasiekti prievadą 3000:

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

Tada, http://203.0.113.1:3000norėdami baigti diegimą , turite nukreipti savo mėgstamą žiniatinklio naršyklę .

„Gogs“ Install Steps For First-time Runžiniatinklio sąsajoje užpildykite reikiamus laukus, kaip parodyta toliau.

Pastaba: būtinai palikite visus kitus laukus nepaliestus.

Į Database Settingsskyrių:

  • Vartotojas: gogsuser
  • Slaptažodis: yourpassword

Į Application General Settingsskyrių:

  • Domenas: gogs.example.com
  • Programos URL: http://gogs.example.com:3000/

Į Admin Account Settingsskyrių:

  • Vartotojo vardas: <your-admin-username>
  • Slaptažodis: <your-admin-password>
  • Patvirtinti slaptažodį: <your-admin-password>
  • Administratoriaus el. paštas: <your-admin-email>

Galiausiai spustelėkite Intall Gogsmygtuką, kad užbaigtumėte diegimą. Atminkite, kad tinkinti nustatymai, atlikti naudojant „Gogs“ žiniatinklio diegimo sąsają, bus saugomi tinkintame „Gogs“ konfigūracijos faile /opt/gogs/custom/conf/app.ini.

Kol kas vartotojai gali apsilankyti „Gogs“ svetainėje adresu http://gogs.example.com:3000. Siekiant palengvinti lankytojų prieigą, kad jiems nebereikėtų pridėti :3000, ir pagerinti sistemos saugumą; galite įdiegti „Nginx“ kaip atvirkštinį tarpinį serverį ir įjungti HTTPS naudodami „Let's Encrypt SSL“ sertifikatą.

Pastaba: nors toliau pateiktų dviejų veiksmų instrukcijos yra neprivalomos, norint įjungti HTTPS saugą, labai rekomenduojama vykdyti visas šias instrukcijas.

4 veiksmas (pasirinktinai): gaukite Let's Encrypt SSL sertifikatą

Uždrausti prieigą prie prievado 3000:

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

Įdiekite „Certbot“ programą:

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

Pateikite paraišką dėl SSL šifravimo sertifikato domenui gogs.example.com:

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

Sertifikatas ir grandinė bus išsaugoti šiuo adresu:

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

Rakto failas bus išsaugotas čia:

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

Pagal numatytuosius nustatymus SSL sertifikato galiojimo laikas baigsis po trijų mėnesių. Galite nustatyti cron užduotį, kaip nurodyta toliau, kad automatiškai atnaujintumėte savo Let's Encrypt sertifikatus:

sudo crontab -e

Paspauskite Iir įveskite šią eilutę:

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

Išsaugoti ir išeiti:

:wq!

Šis cron darbas bandys atnaujinti sertifikatą Užšifruokime kiekvieną dieną vidurdienį.

5 veiksmas (pasirenkama): įdiekite „Nginx“ kaip atvirkštinį tarpinį serverį

Įdiekite „Nginx“ naudodami EPEL YUM repo:

sudo yum install -y nginx

Sukurkite „Gogs“ konfigūracijos failą:

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

Iš naujo paleiskite „Nginx“, kad pritaikytumėte konfigūraciją:

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

Galiausiai nukreipkite į savo mėgstamą žiniatinklio naršyklę, http://gogs.example.com/kad pradėtumėte tyrinėti savo „Gogs“ svetainę. Pamatysite, kad HTTPS protokolas suaktyvinamas automatiškai. Prisijunkite kaip administratorius, kurį nustatėte anksčiau, arba užregistruokite naujas vartotojo paskyras, kad galėtumėte dirbti komandoje.


Įdiekite „Plesk“ „CentOS 7“.

Įdiekite „Plesk“ „CentOS 7“.

Naudojate kitą sistemą? Plesk yra patentuotas žiniatinklio prieglobos valdymo skydelis, leidžiantis vartotojams administruoti savo asmenines ir (arba) klientų svetaines, duomenų bazes

Kaip įdiegti „Squid“ tarpinį serverį „CentOS“.

Kaip įdiegti „Squid“ tarpinį serverį „CentOS“.

Squid yra populiari nemokama „Linux“ programa, leidžianti sukurti persiuntimo žiniatinklio tarpinį serverį. Šiame vadove pamatysite, kaip įdiegti „Squid“ „CentOS“, kad paverstumėte jus

Kaip įdiegti „Lighttpd“ (LLMP Stack) „CentOS 6“.

Kaip įdiegti „Lighttpd“ (LLMP Stack) „CentOS 6“.

Įvadas Lighttpd yra „Apache“ šakutė, skirta daug mažiau išteklių imti. Jis yra lengvas, todėl jo pavadinimas ir yra gana paprastas naudoti. Įdiegti

Statinio tinklo ir IPv6 konfigūravimas CentOS 7

Statinio tinklo ir IPv6 konfigūravimas CentOS 7

VULTR neseniai atliko pakeitimus, ir dabar viskas turėtų veikti gerai, kai įjungta „NetworkManager“. Jei norite išjungti

„Icinga2“ modifikavimas, kad būtų naudojamas pagrindinis / kliento modelis „CentOS 6“ arba „CentOS 7“.

„Icinga2“ modifikavimas, kad būtų naudojamas pagrindinis / kliento modelis „CentOS 6“ arba „CentOS 7“.

Icinga2 yra galinga stebėjimo sistema, o kai naudojama pagrindinio kliento modelyje, ji gali pakeisti NRPE pagrįstų stebėjimo patikrų poreikį. Meistras-klientas

Kaip įdiegti „Apache Cassandra 3.11.x“ „CentOS 7“.

Kaip įdiegti „Apache Cassandra 3.11.x“ „CentOS 7“.

Naudojate kitą sistemą? Apache Cassandra yra nemokama ir atviro kodo NoSQL duomenų bazių valdymo sistema, skirta užtikrinti mastelio keitimą, hig.

Kaip įdiegti „Mattermost 4.1“ „CentOS 7“.

Kaip įdiegti „Mattermost 4.1“ „CentOS 7“.

Naudojate kitą sistemą? Mattermost yra atvirojo kodo, savarankiškai priglobta alternatyva Slack SAAS pranešimų paslaugai. Kitaip tariant, naudodami Mattermost, jūs apytiksliai

Leidžia šifruoti Plesk

Leidžia šifruoti Plesk

„Plesk“ valdymo skydelyje yra labai graži „Lets Encrypt“ integracija. „Lets Encrypt“ yra vienas iš vienintelių SSL teikėjų, išduodančių visus sertifikatus

Leidžia šifruoti „cPanel“.

Leidžia šifruoti „cPanel“.

„Lets Encrypt“ yra sertifikatų institucija, skirta nemokamai teikti SSL sertifikatus. cPanel sukūrė tvarkingą integraciją, kad jūs ir jūsų klientas

Kaip įdiegti „Concrete5“ „CentOS 7“.

Kaip įdiegti „Concrete5“ „CentOS 7“.

Naudojate kitą sistemą? Concrete5 yra atvirojo kodo TVS, kuri siūlo daug išskirtinių ir naudingų funkcijų, padedančių redaktoriams lengvai sukurti turinį

Kaip įdiegti apžvalgos lentą „CentOS 7“.

Kaip įdiegti apžvalgos lentą „CentOS 7“.

Naudojate kitą sistemą? „Review Board“ yra nemokamas atvirojo kodo įrankis, skirtas šaltinio kodui, dokumentacijai, vaizdams ir daugeliui kitų peržiūrėti. Tai internetinė programinė įranga

Nustatykite HTTP autentifikavimą naudodami „Nginx“ „CentOS 7“.

Nustatykite HTTP autentifikavimą naudodami „Nginx“ „CentOS 7“.

Šiame vadove sužinosite, kaip nustatyti HTTP autentifikavimą Nginx žiniatinklio serveriui, kuriame veikia CentOS 7. Reikalavimai Norėdami pradėti, jums reikės

Kaip įdiegti YOURLS „CentOS 7“.

Kaip įdiegti YOURLS „CentOS 7“.

YOURLS (Your Own URL Shortener) yra atvirojo kodo URL sutrumpinimo ir duomenų analizės programa. Šiame straipsnyje apžvelgsime diegimo procesą

Kaip įdiegti ir konfigūruoti „ArangoDB“ „CentOS 7“.

Kaip įdiegti ir konfigūruoti „ArangoDB“ „CentOS 7“.

Naudojate kitą sistemą? Įvadas ArangoDB yra atvirojo kodo NoSQL duomenų bazė su lanksčiu duomenų modeliu dokumentams, grafikams ir raktų reikšmėms. tai yra

Etckeeper naudojimas versijai valdyti /etc

Etckeeper naudojimas versijai valdyti /etc

Įvadas Katalogas /etc/ vaidina lemiamą vaidmenį veikiant Linux sistemai. Taip yra todėl, kad beveik visos sistemos konfigūracijos

Kodėl turėtumėte naudoti SSHFS? Kaip prijungti nuotolinę failų sistemą su SSHFS „CentOS 6“.

Kodėl turėtumėte naudoti SSHFS? Kaip prijungti nuotolinę failų sistemą su SSHFS „CentOS 6“.

Daugelis sistemos administratorių valdo didelius serverių kiekius. Kai failus reikia pasiekti skirtinguose serveriuose, prisijungiant prie kiekvieno atskirai apytiksliai

„Half Life 2“ serverio nustatymas „CentOS 6“.

„Half Life 2“ serverio nustatymas „CentOS 6“.

Ši pamoka apims Half Life 2 žaidimų serverio diegimą CentOS 6 sistemoje. 1 veiksmas: būtinų sąlygų įdiegimas Norėdami nustatyti ou

Kaip įdiegti „Laravel GitScrum“ „CentOS 7“.

Kaip įdiegti „Laravel GitScrum“ „CentOS 7“.

Laravel GitScrum arba GitScrum yra atvirojo kodo produktyvumo įrankis, skirtas padėti kūrimo komandoms įgyvendinti Scrum metodiką panašiai

Kaip įdiegti „PowerDNS“ „CentOS“.

Kaip įdiegti „PowerDNS“ „CentOS“.

Įvadas Šiame „Vultr“ vadove sužinosite, kaip įdiegti „PowerDNS“. PowerDNS yra programa, skirta paleisti savo vardų serverius. Tai labai naudinga, kai

Įdiekite „Wordpress“ naudodami „Apache“, PHP ir „MySQL“ (automatinis paleisties scenarijus)

Įdiekite „Wordpress“ naudodami „Apache“, PHP ir „MySQL“ (automatinis paleisties scenarijus)

Galite nukopijuoti ir įklijuoti šį bash scenarijų į Vultr valdymo skydelio paleisties scenarijaus sritį. Jis įdiegs visus reikalingus paketus į ru

Mašinų augimas: AI pritaikymas realiame pasaulyje

Mašinų augimas: AI pritaikymas realiame pasaulyje

Dirbtinis intelektas nėra ateityje, jis čia, dabartyje Šiame tinklaraštyje Skaitykite, kaip dirbtinio intelekto programos paveikė įvairius sektorius.

DDOS atakos: trumpa apžvalga

DDOS atakos: trumpa apžvalga

Ar taip pat esate DDOS atakų auka ir esate sumišęs dėl prevencijos metodų? Perskaitykite šį straipsnį, kad išspręstumėte savo užklausas.

Ar kada nors susimąstėte, kaip įsilaužėliai uždirba pinigų?

Ar kada nors susimąstėte, kaip įsilaužėliai uždirba pinigų?

Galbūt girdėjote, kad įsilaužėliai uždirba daug pinigų, bet ar kada susimąstėte, kaip jie uždirba tokius pinigus? padiskutuokime.

Revoliuciniai „Google“ išradimai, kurie palengvins jūsų gyvenimą.

Revoliuciniai „Google“ išradimai, kurie palengvins jūsų gyvenimą.

Ar norite pamatyti revoliucinius „Google“ išradimus ir kaip šie išradimai pakeitė kiekvieno žmogaus gyvenimą šiandien? Tada skaitykite tinklaraštį, kad pamatytumėte „Google“ išradimus.

Penktadienio esminiai dalykai: kas atsitiko AI varomiems automobiliams?

Penktadienio esminiai dalykai: kas atsitiko AI varomiems automobiliams?

Savavaledžių automobilių koncepcija, kuri išvažiuotų į kelius su dirbtinio intelekto pagalba, yra svajonė, kurią jau kurį laiką svajojame. Tačiau nepaisant kelių pažadų, jų niekur nematyti. Skaitykite šį tinklaraštį, kad sužinotumėte daugiau…

Technologinis išskirtinumas: tolima žmogaus civilizacijos ateitis?

Technologinis išskirtinumas: tolima žmogaus civilizacijos ateitis?

Kadangi mokslas sparčiai vystosi, perimdamas daug mūsų pastangų, taip pat didėja rizika, kad pateksime į nepaaiškinamą singuliarumą. Skaitykite, ką mums gali reikšti išskirtinumas.

Duomenų saugojimo raida – infografika

Duomenų saugojimo raida – infografika

Duomenų saugojimo metodai gali būti tobulinami nuo pat Duomenų gimimo. Šiame tinklaraštyje, remiantis infografika, aprašoma duomenų saugojimo raida.

Didžiųjų duomenų atskaitos architektūros sluoksnių funkcijos

Didžiųjų duomenų atskaitos architektūros sluoksnių funkcijos

Skaitykite tinklaraštį, kad paprasčiausiai sužinotumėte apie skirtingus didžiųjų duomenų architektūros sluoksnius ir jų funkcijas.

6 nuostabūs išmaniųjų namų įrenginių privalumai

6 nuostabūs išmaniųjų namų įrenginių privalumai

Šiame skaitmeniniu būdu pagrįstame pasaulyje išmanieji namų įrenginiai tapo svarbia gyvenimo dalimi. Štai keletas nuostabių išmaniųjų namų įrenginių privalumų, kaip jie daro mūsų gyvenimą vertą gyventi ir paprastesnį.

„macOS Catalina 10.15.4“ priedo atnaujinimas kelia daugiau problemų, nei sprendžia

„macOS Catalina 10.15.4“ priedo atnaujinimas kelia daugiau problemų, nei sprendžia

Neseniai „Apple“ išleido „macOS Catalina 10.15.4“ priedą, skirtą problemoms išspręsti, tačiau atrodo, kad dėl atnaujinimo kyla daugiau problemų, dėl kurių „Mac“ įrenginiai blokuojami. Norėdami sužinoti daugiau, perskaitykite šį straipsnį