Hvernig á að setja upp Gogs 0.11.53 á CentOS 7

Gogs, eða Go Git þjónusta, er létt, fullkomlega hagnýt sjálfhýst Git netþjónalausn.

Í þessari kennslu mun ég sýna þér hvernig á að setja upp nýjustu stöðugu útgáfuna af Gogs, á CentOS 7 netþjónstilviki. Þegar þetta er skrifað er nýjasta útgáfan af Gogs 0.11.53.

Forkröfur

  • Nýstofnað Vultr CentOS 7 netþjónstilvik með IPv4 vistfangi 203.0.113.1.
  • A sudo notandi .
  • Lén gogs.example.comsem bent er á netþjónstilvikið sem nefnt er hér að ofan.

Skref 1: Framkvæmdu grunnuppsetningarverkefni kerfisins

Opnaðu SSH flugstöð og skráðu þig inn á CentOS 7 netþjónstilvikið sem sudo notandi.

Búðu til skiptiskrá

Í framleiðsluumhverfi er skiptaskrá nauðsynleg fyrir hnökralausa kerfisrekstur. Til dæmis, þegar þú setur upp Gogs á vél með 2GB minni, er mælt með því að búa til 2GB (2048MB) skiptiskrá sem hér segir:

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

Athugið: Ef þú ert að nota aðra miðlarastærð gæti viðeigandi stærð skiptaskrárinnar verið önnur.

Setja upp hýsingarheiti og fullgilt lén (FQDN)

Til að virkja HTTPS öryggi þarftu að setja upp hýsingarheiti (eins og gogs) og FQDN (eins og gogs.example.com) á CentOS 7 vélinni:

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

Þú getur staðfest niðurstöðurnar:

hostname
hostname -f

Breyttu eldveggsreglum til að leyfa innleið HTTPog HTTPSumferð

Sjálfgefið er að höfn 80( HTTP) og 443( HTTPS) eru læst á CentOS 7. Þú þarft að breyta eldveggsreglum á eftirfarandi hátt áður en gestir komast inn á vefsíðuna þína:

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

Settu upp EPEL YUM endurhverfan og uppfærðu síðan kerfið

Til þess að laga villur og bæta afköst kerfisins er alltaf mælt með því að uppfæra kerfið í nýjustu stöðugu stöðuna með YUM:

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

Eftir að kerfið er endurræst skaltu skrá þig aftur inn sem sami sudo notandi til að halda áfram.

Skref 2: Settu upp MariaDB 10.3 Series

Gogs þarf gagnagrunnsstjórnunarkerfi, eins og MySQL/MariaDB, PostgreSQL eða SQLite. Í þessari kennslu munum við setja upp og nota núverandi stöðugu útgáfu af MariaDB.

Settu upp og ræstu núverandi stöðuga útgáfu af MariaDB:

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

Öruggt MariaDB:

sudo /usr/bin/mysql_secure_installation

Þegar beðið er um það skaltu svara spurningum eins og sýnt er hér að neðan:

  • 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

Skráðu þig inn í MySQL skelina sem rót:

mysql -u root -p

Í MariaDB skelinni skaltu búa til sérstakan MariaDB gagnagrunn (hann verður að nota utf8mb4stafasettið) og sérstakan MariaDB notanda fyrir 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;

Athugið: Af öryggisástæðum, vertu viss um að skipta út gogs, gogsuser, og yourpasswordfyrir þínar eigin.

Skref 3: Settu upp Gogs

Settu upp Git:

sudo yum install -y git

Búðu til sérstakan notanda og sérstakan hóp, sem báðir heita git:

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

Sæktu og pakkaðu niður Gogs 0.11.53 tvöfalda skjalasafninu:

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

Settu upp systemd einingaskrá fyrir Gogs:

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

Notaðu viritilinn til að opna nýstofnaða gogs.serviceskrá:

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

Finndu eftirfarandi línur:

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

Breyttu þeim í sömu röð:

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

Vista og hætta:

:wq!

Ræstu og virkjaðu Gogs þjónustuna:

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

Gogs munu nú vera í gangi á CentOS 7 netþjónstilvikinu og hlusta á port 3000.

Breyttu eldveggsreglum til að leyfa aðgang gesta á höfn 3000:

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

Næst þarftu að benda uppáhalds vefvafranum þínum á til http://203.0.113.1:3000að klára uppsetninguna.

Á Gogs Install Steps For First-time Runvefviðmótinu skaltu fylla út nauðsynlega reiti eins og sýnt er hér að neðan.

Athugið: Vertu viss um að láta alla aðra reiti vera ósnerta.

Í Database Settingskaflanum:

  • Notandi: gogsuser
  • Lykilorð: yourpassword

Í Application General Settingskaflanum:

  • Lén: gogs.example.com
  • Slóð umsóknar: http://gogs.example.com:3000/

Í Admin Account Settingskaflanum:

  • Notendanafn: <your-admin-username>
  • Lykilorð: <your-admin-password>
  • Staðfesta lykilorð: <your-admin-password>
  • Netfang stjórnanda: <your-admin-email>

Að lokum, smelltu á Intall Gogshnappinn til að ljúka uppsetningunni. Mundu að sérsniðnar stillingar þínar sem gerðar eru í Gogs vefuppsetningarviðmótinu verða geymdar í Gogs sérsniðnu stillingarskránni /opt/gogs/custom/conf/app.ini.

Í bili geta notendur heimsótt Gogs vefsíðuna á http://gogs.example.com:3000. Til að auðvelda aðgang gesta, svo að þeir þurfi ekki lengur að bæta við :3000, og til að bæta öryggi kerfisins; þú getur sett upp Nginx sem öfugt umboð og virkjað HTTPS með Let's Encrypt SSL vottorð.

Athugið: Þó að leiðbeiningar í eftirfarandi tveimur skrefum séu valfrjálsar, þá er mjög mælt með því að framkvæma allar þessar leiðbeiningar til að virkja HTTPS öryggi.

Skref 4 (valfrjálst): Fáðu Let's Encrypt SSL vottorð

Banna aðgang á höfn 3000:

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

Settu upp Certbot tólið:

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

Sæktu um Let's Encrypt SSL vottorð fyrir lénið gogs.example.com:

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

Vottorðið og keðjan verða vistuð á eftirfarandi:

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

Lykilskráin verður vistuð hér:

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

Sjálfgefið er að Let's Encrypt SSL vottorðið rennur út eftir þrjá mánuði. Þú getur sett upp cron starf eins og hér að neðan til að endurnýja Let's Encrypt vottorðin þín sjálfkrafa:

sudo crontab -e

Ýttu á Iog sláðu inn eftirfarandi línu:

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

Vista og hætta:

:wq!

Þetta cron starf mun reyna að endurnýja Let's Encrypt vottorðið á hverjum degi á hádegi.

Skref 5 (Valfrjálst): Settu upp Nginx sem öfugt umboð

Settu upp Nginx með því að nota EPEL YUM endurhverfan:

sudo yum install -y nginx

Búðu til stillingarskrá fyrir Gogs:

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

Endurræstu Nginx til að setja stillingarnar þínar í gildi:

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

Að lokum skaltu benda uppáhalds vafranum þínum á til http://gogs.example.com/að byrja að kanna Gogs vefsíðuna þína. Þú munt komast að því að HTTPS samskiptareglur eru virkjar sjálfkrafa. Skráðu þig inn sem stjórnandi sem þú settir upp áðan, eða skráðu nýja notendareikninga fyrir teymisvinnu.


Settu upp Plesk á CentOS 7

Settu upp Plesk á CentOS 7

Að nota annað kerfi? Plesk er sérstakt stjórnborð fyrir vefþjón sem gerir notendum kleift að stjórna persónulegum og/eða viðskiptavinum vefsíðum sínum, gagnagrunnum

Hvernig á að setja upp Squid Proxy á CentOS

Hvernig á að setja upp Squid Proxy á CentOS

Smokkfiskur er vinsælt, ókeypis Linux forrit sem gerir þér kleift að búa til framsendingarforrit á vefnum. Í þessari handbók muntu sjá hvernig á að setja upp Squid á CentOS til að snúa þér

Hvernig á að setja upp Lighttpd (LLMP Stack) á CentOS 6

Hvernig á að setja upp Lighttpd (LLMP Stack) á CentOS 6

Inngangur Lighttpd er gaffal af Apache sem miðar að því að vera miklu minna auðlindafrekt. Hann er léttur, þess vegna heitir hann, og er frekar einfaldur í notkun. Uppsetning

Stilla Static Networking og IPv6 á CentOS 7

Stilla Static Networking og IPv6 á CentOS 7

VULTR hefur nýlega gert breytingar á enda þeirra og allt ætti nú að virka vel út úr kassanum með NetworkManager virkt. Ef þú vilt slökkva á

Breytir Icinga2 til að nota Master/Client Model á CentOS 6 eða CentOS 7

Breytir Icinga2 til að nota Master/Client Model á CentOS 6 eða CentOS 7

Icinga2 er öflugt eftirlitskerfi og þegar það er notað í aðal-viðskiptavinamódel getur það komið í stað þörf fyrir NRPE-undirstaða vöktunareftirlit. Húsbóndinn

Hvernig á að setja upp Apache Cassandra 3.11.x á CentOS 7

Hvernig á að setja upp Apache Cassandra 3.11.x á CentOS 7

Að nota annað kerfi? Apache Cassandra er ókeypis og opinn uppspretta NoSQL gagnagrunnsstjórnunarkerfi sem er hannað til að veita sveigjanleika, háan

Hvernig á að setja upp Microweber á CentOS 7

Hvernig á að setja upp Microweber á CentOS 7

Að nota annað kerfi? Microweber er opinn uppspretta draga og sleppa CMS og netverslun. Microweber frumkóði er hýst á GitHub. Þessi handbók mun sýna þér

Hvernig á að setja upp Mattermost 4.1 á CentOS 7

Hvernig á að setja upp Mattermost 4.1 á CentOS 7

Að nota annað kerfi? Mattermost er opinn uppspretta, sjálfhýst valkostur við Slack SAAS skilaboðaþjónustuna. Með öðrum orðum, með Mattermost, þú ca

Að búa til net Minecraft netþjóna með BungeeCord á Debian 8, Debian 9 eða CentOS 7

Að búa til net Minecraft netþjóna með BungeeCord á Debian 8, Debian 9 eða CentOS 7

Það sem þú þarft Vultr VPS með að minnsta kosti 1GB af vinnsluminni. SSH aðgangur (með rót / stjórnunarréttindi). Skref 1: Uppsetning BungeeCord Fyrst af öllu

Láttu dulkóða á Plesk

Láttu dulkóða á Plesk

Plesk stjórnborðið er með mjög fallegri samþættingu fyrir Lets Encrypt. Lets Encrypt er ein af einu SSL veitunum sem gefa út skírteini að fullu

Láttu dulkóða á cPanel

Láttu dulkóða á cPanel

Lets Encrypt er vottunaryfirvöld sem sérhæfir sig í að útvega SSL vottorð án endurgjalds. cPanel hefur byggt upp snyrtilega samþættingu svo þú og viðskiptavinurinn þinn

Hvernig á að setja upp Concrete5 á CentOS 7

Hvernig á að setja upp Concrete5 á CentOS 7

Að nota annað kerfi? Concrete5 er opinn uppspretta CMS sem býður upp á marga áberandi og gagnlega eiginleika til að aðstoða ritstjóra við að framleiða efni auðveldlega og

Hvernig á að setja upp Review Board á CentOS 7

Hvernig á að setja upp Review Board á CentOS 7

Að nota annað kerfi? Review Board er ókeypis og opinn hugbúnaður til að skoða frumkóða, skjöl, myndir og margt fleira. Það er vefbundið hugbúnaðarstríð

Settu upp HTTP auðkenningu með Nginx á CentOS 7

Settu upp HTTP auðkenningu með Nginx á CentOS 7

Í þessari handbók munt þú læra hvernig á að setja upp HTTP auðkenningu fyrir Nginx vefþjón sem keyrir á CentOS 7. Kröfur Til að byrja þarftu að

Hvernig á að setja upp YOURLS á CentOS 7

Hvernig á að setja upp YOURLS á CentOS 7

YOURLS (Your Own URL Shortener) er opinn uppspretta vefslóða styttingar og gagnagreiningarforrit. Í þessari grein munum við fjalla um ferlið við uppsetningu

How to Install and Configure ArangoDB on CentOS 7

How to Install and Configure ArangoDB on CentOS 7

Using a Different System? Introduction ArangoDB is an open source NoSQL database with a flexible data model for documents, graphs, and key-values. It is

Notkun Etckeeper fyrir útgáfustýringu á /etc

Notkun Etckeeper fyrir útgáfustýringu á /etc

Inngangur /etc/ skrárinn gegnir mikilvægu hlutverki í því hvernig Linux kerfi virkar. Ástæðan fyrir þessu er sú að næstum allar kerfisstillingar

Af hverju ættir þú að nota SSHFS? Hvernig á að tengja fjarskráarkerfi með SSHFS á CentOS 6

Af hverju ættir þú að nota SSHFS? Hvernig á að tengja fjarskráarkerfi með SSHFS á CentOS 6

Margir kerfisstjórar stjórna miklu magni af netþjónum. Þegar aðgangur þarf að skrám á mismunandi netþjónum er innskráning á hvern og einn fyrir sig ca

Setja upp Half Life 2 Server á CentOS 6

Setja upp Half Life 2 Server á CentOS 6

Þessi kennsla mun fjalla um ferlið við að setja upp Half Life 2 leikjaþjón á CentOS 6 System. Skref 1: Forsendur settar upp Til að setja upp ou

Hvernig á að setja upp Laravel GitScrum á CentOS 7

Hvernig á að setja upp Laravel GitScrum á CentOS 7

Laravel GitScrum, eða GitScrum er opinn uppspretta framleiðniverkfæri hannað til að hjálpa þróunarteymi að innleiða Scrum aðferðafræðina á svipaðan hátt

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Gervigreind er ekki í framtíðinni, hún er hér í nútímanum Í þessu bloggi Lestu hvernig gervigreindarforrit hafa haft áhrif á ýmsa geira.

DDOS árásir: Stutt yfirlit

DDOS árásir: Stutt yfirlit

Ertu líka fórnarlamb DDOS árása og ruglaður með forvarnaraðferðirnar? Lestu þessa grein til að leysa spurningar þínar.

Hefur þú einhvern tíma velt því fyrir þér hvernig tölvuþrjótar græða peninga?

Hefur þú einhvern tíma velt því fyrir þér hvernig tölvuþrjótar græða peninga?

Þú gætir hafa heyrt að tölvuþrjótar græða mikið af peningum, en hefur þú einhvern tíma velt því fyrir þér hvernig þeir vinna sér inn svona peninga? við skulum ræða.

Byltingarkenndar uppfinningar frá Google sem munu auðvelda lífi þínu.

Byltingarkenndar uppfinningar frá Google sem munu auðvelda lífi þínu.

Viltu sjá byltingarkenndar uppfinningar frá Google og hvernig þessar uppfinningar breyttu lífi hvers manns í dag? Lestu síðan til að blogga til að sjá uppfinningar frá Google.

Föstudagur Nauðsynlegur: Hvað varð um gervigreindardrifna bíla?

Föstudagur Nauðsynlegur: Hvað varð um gervigreindardrifna bíla?

Hugmyndin um að sjálfkeyrandi bílar fari á göturnar með hjálp gervigreindar er draumur sem við höfum átt um tíma núna. En þrátt fyrir nokkur loforð eru þau hvergi sjáanleg. Lestu þetta blogg til að læra meira…

Tæknileg sérkenni: Fjarlæg framtíð mannlegrar siðmenningar?

Tæknileg sérkenni: Fjarlæg framtíð mannlegrar siðmenningar?

Þar sem vísindin þróast hratt og taka yfir mikið af viðleitni okkar, eykst hættan á því að verða fyrir óútskýranlegri einstæðu. Lestu, hvað sérkenni gæti þýtt fyrir okkur.

Þróun gagnageymslu – Infographic

Þróun gagnageymslu – Infographic

Geymsluaðferðir gagna hafa verið að þróast gæti verið frá fæðingu gagna. Þetta blogg fjallar um þróun gagnageymslu á grundvelli upplýsingamynda.

Virkni Big Data Reference Architecture Layers

Virkni Big Data Reference Architecture Layers

Lestu bloggið til að þekkja mismunandi lög í Big Data Architecture og virkni þeirra á einfaldasta hátt.

6 ótrúlegir kostir þess að hafa snjall heimilistæki í lífi okkar

6 ótrúlegir kostir þess að hafa snjall heimilistæki í lífi okkar

Í þessum stafræna heimi hafa snjallheimilistæki orðið afgerandi hluti af lífi. Hér eru nokkrir ótrúlegir kostir snjallheimatækja um hvernig þau gera líf okkar þess virði að lifa því og einfaldara.

macOS Catalina 10.15.4 viðbót uppfærsla veldur fleiri vandamálum en að leysa

macOS Catalina 10.15.4 viðbót uppfærsla veldur fleiri vandamálum en að leysa

Nýlega gaf Apple út macOS Catalina 10.15.4 viðbótaruppfærslu til að laga vandamál en svo virðist sem uppfærslan sé að valda fleiri vandamálum sem leiða til múrsteins á Mac vélum. Lestu þessa grein til að læra meira