A GitLab egy átfogó DevOps platform, amely a funkciók széles skáláját kínálja a verziókezeléshez, a folyamatos integrációhoz, telepítéshez és projektmenedzsmenthez. A DevOps életciklusának különböző szakaszait egyetlen alkalmazásba integrálja, lehetővé téve a csapatok számára, hogy együttműködve és hatékonyan dolgozzanak. A GitLab Community Edition (CE) a GitLab nyílt forráskódú verziója, amely hatékony eszközöket kínál a tárolók kezeléséhez, a problémák nyomon követéséhez és a CI/CD folyamatok automatizálásához.
A GitLab CE Debian 12-re vagy 11-re történő telepítéséhez használhatja a hivatalos GitLab Bash szkriptet a GitLab CE APT tárhely beállításához, majd a szoftver telepítéséhez és konfigurálásához. Ez az útmutató végigvezeti Önt a teljes folyamaton, biztosítva, hogy a Debian rendszeren robusztus GitLab-beállítás legyen.
Frissítse a Debiant a Gitlab telepítése előtt
A Debian operációs rendszer naprakészen tartása elengedhetetlen a stabilitás és a biztonság megőrzéséhez. Annak érdekében, hogy a Debian rendszeren lévő összes meglévő csomag naprakész legyen, ajánlatos egy frissítést végrehajtani a legújabb biztonsági frissítések és hibajavítások biztosítása érdekében, ezzel biztosítva a rendszer stabilitását és megbízhatóságát.
Könnyen frissítheti Debian operációs rendszerét a következő parancs futtatásával:
sudo apt update && sudo apt upgrade
Telepítse a szükséges csomagokat a GitLab számára
A telepítési folyamat kritikus lépése annak biztosítása, hogy a GitLab összes függősége telepítve legyen. Ezek a függőségek olyan szükséges összetevők, amelyekre a GitLab támaszkodik a megfelelő működéshez. Szerencsére ezeknek a függőknek a telepítése egyszerű folyamat.
Könnyedén telepítheti őket a terminál megnyitásával és a következő parancs futtatásával:
sudo apt install curl ca-certificates apt-transport-https tzdata perl
Importálja a GitLab CE APT adattárat
Alapértelmezés szerint a GitLab nem érhető el a Debian alapértelmezett tárolóiban. Ez azt jelenti, hogy a GitLab telepítéséhez manuálisan kell létrehoznia egy adattárat. A GitLab azonban egy APT-szkriptet biztosít ehhez a folyamathoz, megkönnyítve a felhasználók számára a platform telepítését. Ezzel a szkripttel létrehozhat egy GitLab tárolót, amely lehetővé teszi a GitLab telepítését a szabványos APT csomagkezelő használatával.
A szkript letöltéséhez írja be a következő parancsot a terminálba:
curl -s https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
A parancs végrehajtása után a szkript letölti, és hozzáadja a GitLab tárolót a Debian rendszerhez. A csomaglistát is frissíti, lehetővé téve a GitLab telepítését a szabványos APT csomagkezelő használatával.
Fejezze be a GitLab telepítését az APT Command segítségével
A következő lépés a GitLab telepítése. Ne feledje, hogy a szkript már használta az „apt update” parancsot az újonnan létrehozott és módosított tárhely szinkronizálására. Miután ez megtörtént, folytathatja a telepítési parancs végrehajtását a következő futtatásával:
sudo apt install gitlab-ce
Ez a parancs telepíti a GitLab Community Edition-t (CE), a GitLab ingyenes és nyílt forráskódú verzióját. A telepítési folyamat eltarthat egy ideig, az internet sebességétől és a rendszer specifikációitól függően.
Példa kimenet, ha a GitLab telepítése sikeres Debianon:
A GitLab konfigurálása
A GitLab Debianon való konfigurálásához több lépést is gondosan követni kell. Ez a rész lépésről lépésre írja le a folyamatot, beleértve a gazdagépnév konfigurálását, a tűzfal beállítását és az e-mail beállítások konfigurálását.
Állítsa be a gazdagép nevét
A GitLab-példány eléréséhez elengedhetetlen a GitLab-kiszolgáló gazdagépnevének konfigurálása, ezért olyan nevet válasszon, amelyet könnyen megjegyezhet és elérhet. Kövesse az alábbi lépéseket a gazdagépnév beállításához:
Nyissa meg a GitLab konfigurációs fájlt egy szövegszerkesztővel:
sudo nano /etc/gitlab/gitlab.rb
Keresse meg az external_url beállítást, és cserélje ki a példa URL-t a kívánt gazdagépnévre:
external_url 'https://gitlab.example.com'
Mentse el a fájlt, és lépjen ki a szövegszerkesztőből.
Most konfigurálja újra a GitLabot a módosítások alkalmazásához:
sudo gitlab-ctl reconfigure
Állítsa be az UFW tűzfalat a Gitlab számára
A GitLab alapértelmezés szerint a 80-as portot használja a HTTP-hez és a 443-as portot a HTTPS-hez. Kulcsfontosságú, hogy a tűzfalat úgy konfigurálja, hogy engedélyezze a forgalmat ezeken a portokon, és gondoskodjon arról, hogy a GitLab-példány elérhető legyen.
A tűzfal beállításához kövesse az alábbi lépéseket:
Először telepítse az UFW tűzfalat, mivel ez alapértelmezés szerint nincs telepítve a Debianra, a következő paranccsal:
sudo apt install ufw
Ezután a telepítés befejezése után engedélyezze az UFW tűzfalat a következő paranccsal:
sudo ufw enable
Nyissa meg a tűzfal konfigurációs fájlját egy szövegszerkesztővel:
sudo nano /etc/ufw/applications.d/gitlab
Másolja és illessze be a következő sorokat a fájlba:
[GitLab]
title=GitLab
description=GitLab application
ports=80,443/tcp
Mentse el a fájlt, és lépjen ki a szövegszerkesztőből.
Engedélyezze a GitLab alkalmazást a tűzfalon:
sudo ufw app update GitLab
sudo ufw allow GitLab
E-mail beállítások konfigurálása
A GitLab e-mailes értesítésekkel tájékoztatja a felhasználókat a projekttevékenységekről, például az új problémákról, az egyesítési kérelmekről és a megjegyzésekről.
Kövesse az alábbi lépéseket az e-mail beállítások konfigurálásához:
Nyissa meg a GitLab konfigurációs fájlt egy szövegszerkesztővel:
sudo nano /etc/gitlab/gitlab.rb
Keresse meg az gitlab_rails['smtp_enable'] beállítást, és állítsa igazra:
gitlab_rails['smtp_enable'] = true
Adja hozzá a következő sorokat a fájlhoz, hogy konfigurálja az e-mail szolgáltatója, például a Gmail SMTP-kiszolgáló beállításait:
gitlab_rails['smtp_address'] = "smtp.gmail.com"
gitlab_rails['smtp_port'] = 587
gitlab_rails['smtp_user_name'] = "example@gmail.com"
gitlab_rails['smtp_password'] = "your_password"
gitlab_rails['smtp_domain'] = "smtp.gmail.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
Mentse el a fájlt, és lépjen ki a szövegszerkesztőből.
Konfigurálja újra a GitLabot a módosítások alkalmazásához:
sudo gitlab-ctl reconfigure
Fontos megjegyezni, hogy a „gitlab-ctl reconfigure” parancs végrehajtása után megfigyelheti, hogy a terminál kimenete a következő üzenettel zárul:
Notes:
Default admin account has been configured with following details:
Username: root
Password: You didn't opt-in to print initial root password to STDOUT.
Password stored to /etc/gitlab/initial_root_password. This file will be cleaned up in first reconfigure run after 24 hours.
A root (GitLab) jelszó megtekintéséhez hajtsa végre a következő parancsot a terminálon:
sudo cat /etc/gitlab/initial_root_password
A parancs végrehajtása megjeleníti a root jelszót a terminálban. Kulcsfontosságú, hogy ezt a jelszót biztonságban tartsa, és ne ossza meg jogosulatlan felhasználókkal.
Ha vissza kell állítania a root jelszót, használja a következő parancsot:
sudo gitlab-rake "gitlab:password:reset[root]"
A parancs végrehajtása után a root jelszó egy véletlenszerű karakterláncra áll vissza, amely a terminál kimenetén jelenik meg. Fontos megjegyezni, hogy a root jelszó visszaállítása érvényteleníti az összes meglévő és személyes hozzáférési tokent, ezért a felhasználóknak újakat kell létrehozniuk a jelszó visszaállítása után.
Biztonsági okokból javasoljuk, hogy a kezdeti beállítás után a lehető leghamarabb módosítsa a root jelszót egy erős és egyedire, és kerülje az alapértelmezett jelszó használatát. A root jelszavát úgy módosíthatja, hogy bejelentkezik a GitLab webes felületére, a „Felhasználói beállítások”> „Fiók” menüpontra lép, és kiválasztja a „Jelszó módosítása” lehetőséget.
Hozzáférés a GitLab felhasználói felületéhez
A háttérkonfiguráció befejezése után ideje bejelentkezni a GitLabba, és hozzáférni. Ennek eléréséhez nyissa meg a GitLab-hoz rendelt tartomány elérési utat a konfigurációs fájlban.
https://gitlab.example.com
Ezután jelentkezzen be a GitLabba a „root” felhasználónévvel és a telepítés során kapott jelszóval. Amint azt az előző szakasz jelszavas kinyomtatásában említettük, az útmutató jelszava „4zB2mbBLCcRLRAkv3qHfmSZULJ/6ocJNe2XK8zNx9nU=” volt a képen.
Sikeresen bejelentkezett root fiókként, és az alapértelmezett céloldalra érkezik.
További tippek
Az alábbiakban felsorolunk néhány biztonsági, testreszabási vagy egyéb általános tippet, amikor először jelentkezik be a GitLab felhasználói felületére:
- Módosítsa az alapértelmezett jelszót: A GitLab-példány biztonságának növelése érdekében elengedhetetlen a root felhasználó alapértelmezett jelszavának megváltoztatása. Jelentkezzen be a GitLabba az alapértelmezett felhasználónévvel és jelszóval, keresse meg a „Felhasználói beállítások”> „Jelszó” menüpontot, és adja meg új jelszavát.
- Kétfaktoros hitelesítés (2FA) beállítása: A 2FA által biztosított további biztonsági réteg hozzáadásával a bejelentkezési folyamathoz hitelesítési tényezőt, például a telefonra küldött vagy egy alkalmazás által generált kódot adunk. A 2FA engedélyezéséhez a GitLabban lépjen a „Felhasználói beállítások”> „Fiók”> „Kéttényezős hitelesítés” elemre, és kövesse az utasításokat.
- Hozzon létre egy projektet: Ha új projektet szeretne létrehozni a GitLabban, lépjen a „Projektek” oldalra, és kattintson az „Új projekt” gombra. Létrehozhat egy üres projektet, vagy importálhat egy meglévő projektet egy Git-lerakatból.
- A felhasználói felület testreszabása: A GitLab számos testreszabási lehetőséget tesz lehetővé, mint például a téma megváltoztatása, egyéni logó hozzáadása és a navigációs sáv konfigurálása. Keresse meg az „Admin Area” > „Settings” menüpontot, és válassza ki a megfelelő beállításokat a felhasználói felület testreszabásához.
- A hozzáférés-vezérlés konfigurálása: A GitLab hatékony hozzáférés-vezérlési funkciói lehetővé teszik annak szabályozását, hogy ki férhet hozzá a projektjeihez, és mit tehet. Lépjen a „Projektbeállítások” > „Tagok” elemre, és vegyen fel vagy távolítson el különböző hozzáférési szintekkel rendelkező tagokat a hozzáférés-szabályozás konfigurálásához.
- GitLab CI/CD használata: A GitLab hatékony CI/CD képességei automatizálják a kód tesztelését és telepítését. A CI/CD folyamatok konfigurálásához hozzon létre egy „.gitlab-ci.yml” fájlt a projekt gyökérkönyvtárában, és határozza meg a folyamat szakaszait és feladatait.
- A GitLab Runner beállítása: A GitLab Runner egy könnyű ügynök, amely CI/CD-feladatokat futtat, és az eredményeket visszaküldi a GitLabnak. Kövesse a GitLab dokumentációjában található utasításokat a GitLab Runner telepítéséhez és konfigurálásához a Debian rendszeren.
- Készítsen biztonsági másolatot a GitLab-példányról: Rendszeresen készítsen biztonsági másolatot a GitLab-példányról, hogy megelőzze az adatvesztést hardverhiba vagy más katasztrófa esetén. Futtassa a „gitlab-rake gitlab:backup:create” parancsot a terminálon a GitLab példány biztonsági mentéséhez.
Cronjob létrehozása a GitLab Auto Backup számára
A GitLab automatikus biztonsági mentésének cronjob beállítása a Debian rendszeren létfontosságú az adatok biztonsága és biztonsága érdekében. A cronjob egy ütemezett feladat, amely meghatározott időközönként automatikusan lefut, hogy biztonsági másolatot készítsen a GitLab-példányról. Kövesse ezeket a lépéseket egy cronjob létrehozásához a GitLab automatikus biztonsági mentéshez a Debian rendszeren.
Hozzon létre egy Gitlab biztonsági mentési szkriptet
Az első lépés egy biztonsági mentési szkript létrehozása a GitLab példány biztonsági mentésének végrehajtásához. Kövesse az alábbi lépéseket:
Szövegszerkesztővel hozzon létre egy új fájlt a biztonsági mentési szkripthez. Íme egy példa:
sudo nano /usr/local/bin/gitlab-backup.sh
Illessze be a következő kódot a fájlba:
#!/bin/bash
BACKUP_DIR=/var/opt/gitlab/backups
TIMESTAMP=$(date +%s)
sudo gitlab-rake gitlab:backup:create
sudo cp ${BACKUP_DIR}/$(ls -t ${BACKUP_DIR} | head -1) ${BACKUP_DIR}/gitlab_backup_${TIMESTAMP}.tar
- Mentse el a fájlt, és lépjen ki a szövegszerkesztőből.
Ez a szkript biztonsági másolatot készít a GitLab-példányról a gitlab-rake gitlab:backup:create parancs futtatásával. A biztonsági másolat létrehozása után a legutóbbi biztonsági másolatot egy új fájlba duplikálja, a fájlnévben időbélyeggel.
Engedélyek és tulajdonjog beállítása
A következő lépés a megfelelő engedélyek és tulajdonjogok létrehozása a biztonsági mentési parancsfájlhoz, hogy biztosítsa a cronjob futtatását. Kövesse az alábbi lépéseket:
Állítsa be a biztonsági mentési szkript tulajdonosát a GitLabhoz társított felhasználóra:
sudo chown git:git /usr/local/bin/gitlab-backup.sh
Állítsa be a biztonsági mentési szkript engedélyeit a végrehajtás engedélyezéséhez:
sudo chmod +x /usr/local/bin/gitlab-backup.sh
Cronjob létrehozása
A következő lépés egy cronjob létrehozása a biztonsági mentési szkript rendszeres futtatásának ütemezéséhez. Kövesse az alábbi lépéseket:
A GitLab felhasználó crontab konfigurációs fájljának megnyitásához kövesse az alábbi lépéseket:
sudo crontab -u git -e
A biztonsági mentési szkript minden nap hajnali 1:00-kor történő futtatásának ütemezéséhez adja hozzá a következő sort a GitLab felhasználó crontab konfigurációs fájljához:
0 1 * * * /path/to/backup/script.sh
Mentse el a fájlt, és lépjen ki a szövegszerkesztőből.
Ez a cronjob automatikusan végrehajtja a biztonsági mentési szkriptet minden nap 1:00 órakor, ami egy új biztonsági másolatfájlt eredményez, amelynek a fájl neve egy időbélyegzőt tartalmaz.
A Cronjob tesztelése
A cronjob funkciók helyességét úgy ellenőrizheti, hogy manuálisan futtatja a biztonsági mentési parancsfájlt, és gondoskodik arról, hogy a biztonsági mentési fájl hibamentes legyen. A teszt végrehajtásához írja be a következő parancsot a terminálba:
sudo /usr/local/bin/gitlab-backup.sh
Ez a parancs egy új biztonsági mentési fájlt hoz létre a "/var/opt/gitlab/backups" könyvtárban. A fájlnév tartalmazni fog egy időbélyeget, amely jelzi a biztonsági másolat létrehozásának időpontját.
GitLab terminálparancsok
A GitLab-ctl egy parancssori eszköz a GitLab kezelésére a Debian rendszeren. Terminálparancsokat biztosít többek között a GitLab szolgáltatások indításához, leállításához, újraindításához és kezeléséhez. Itt található egy részletes szakasz a GitLab-ctl terminálparancsokról, valamint példaparancsok és kimenetek magyarázatokkal.
A GitLab szolgáltatások indítása és leállítása
A GitLab szolgáltatások elindításához és leállításához használja a következő parancsokat:
Indítsa el az összes GitLab szolgáltatást:
sudo gitlab-ctl start
Az összes GitLab szolgáltatás leállítása:
sudo gitlab-ctl stop
Indítsa újra az összes GitLab szolgáltatást:
sudo gitlab-ctl restart
A GitLab szolgáltatások újratöltése:
sudo gitlab-ctl reload
Ezek a parancsok elindítják, leállítják, újraindítják vagy újratöltik az összes GitLab szolgáltatást. A kimenet jelzi, hogy mely szolgáltatások vannak elindítva vagy leállítva, és hogy a művelet sikeres volt-e.
A GitLab szolgáltatások állapotának ellenőrzése
A GitLab szolgáltatások állapotának ellenőrzéséhez használja a következő parancsot:
sudo gitlab-ctl status
Ezek a parancsok elindítják, leállítják, újraindítják vagy újratöltik az összes GitLab szolgáltatást. A parancs végrehajtása után a kimenet megmutatja, hogy mely szolgáltatások érintettek, és hogy a művelet sikeres volt-e.
A GitLab adatok biztonsági mentése és visszaállítása
A következő paranccsal biztonsági másolatot készíthet a GitLab adatokról:
Készítsen biztonsági másolatot a GitLab adatokról:
sudo gitlab-rake gitlab:backup:create
A megadott parancs biztonsági mentési fájlt hoz létre, amely tartalmazza az összes GitLab adatot, például lerakatokat, felhasználói adatokat és konfigurációs fájlokat. A biztonsági mentési fájl a „/var/opt/gitlab/backups” könyvtárban lesz tárolva.
A GitLab adatok biztonsági másolatának visszaállítása:
sudo gitlab-rake gitlab:backup:restore BACKUP=<backup_file>
Ezzel a paranccsal visszaállíthatja a GitLab adatok biztonsági másolatát egy adott biztonsági mentési fájlból. A biztonsági mentési fájlnak a „var/opt/gitlab/backups” könyvtárban kell lennie, vagy megadhatja a biztonsági mentési fájl teljes elérési útját.
A GitLab konfigurációjának ellenőrzése
A következő paranccsal ellenőrizheti a GitLab konfigurációját:
sudo gitlab-rake gitlab:check
Ez a parancs képes keresni a GitLab konfigurációjában található hibákat vagy figyelmeztetéseket, beleértve az elavult verziókat, a hiányzó függőségeket és a rosszul konfigurált beállításokat. A kimenet összefoglalja a vizsgálat eredményeit és részletes információkat az észlelt problémákról.
A GitLab naplóinak ellenőrzése
A következő parancsokkal ellenőrizheti a GitLab naplóit:
Tekintse meg a GitLab naplókat:
sudo gitlab-ctl tail gitlab-rails/production.log
A következő paranccsal megtekintheti a GitLab termelési naplójának utolsó tíz sorát, amely részletezi a felhasználói műveleteket, figyelmeztetéseket és hibákat.
Tekintse meg a GitLab NGINX naplóit:
sudo gitlab-ctl tail nginx/gitlab_access.log
Ez a parancs a GitLab NGINX hozzáférési naplójának utolsó tíz sorát jeleníti meg, amely a HTTP-kérések és válaszok részleteit tartalmazza.
Tekintse meg a GitLab PostgreSQL naplókat:
sudo gitlab-ctl tail postgresql/current
Ez a parancs megjeleníti a GitLab PostgreSQL napló utolsó tíz sorát, amely az adatbázis-lekérdezésekről és tranzakciókról tartalmaz információkat.
Következtetés
Ha a GitLab CE sikeresen telepítve van a Debian rendszerre a hivatalos telepítőszkript segítségével, teljes mértékben kihasználhatja a hatalmas DevOps képességeit. Ez a módszer biztosítja, hogy a legújabb verzióval rendelkezzen, és könnyen hozzáférjen a frissítésekhez. Rendszeresen karbantartja és frissítse GitLab-példányát, hogy élvezhesse a legújabb funkciókat és biztonsági fejlesztéseket. Élvezze a zökkenőmentes integrációs és együttműködési eszközöket, amelyeket a GitLab CE kínál fejlesztési projektjeihez.