Serveris

Konfigūruoti „GitLab“ konteinerių registrą, CI vamzdyną su „SonarQube“

Konfigūruoti „GitLab“ konteinerių registrą, CI vamzdyną su „SonarQube“

Šiandienos pamokoje vaizdams saugoti naudosime „GitLab“ konteinerių registrą. Norėdami sužinoti apie „GitLab“ diegimą ir konfigūracijas, žiūrėkite mūsų „GitLab“ vadovą.

Pirmiausia pradėkime nuo konteinerio diegimo.

1. Konfigūruokite konteinerių registrą

Eikite į administratoriaus sritį ir pirmiausia pastebite, kad pagal numatytuosius nustatymus „Container“ registras yra išjungtas.

Konteinerių registras išjungtas

Įdiekite „Container“ registrą

Turėtume modifikuoti „GitLab“ konfigūracijos failą. Įveskite šią komandą:

a) Pakeiskite „gitlab“.rb

vim / etc / gitlab / gitlab.rb

Pakeiskite šią eilutę:

register_external_url 'https: // gitlab.fosslinux.com: 5050 '

Registro URL

Dabar registro URL klausosi HTTPS naudojant esamą „GitLab“ URL su kitu prievadu.

b) Po modifikavimo turite iš naujo sukonfigūruoti „Gitlab“.

„gitlab-ctl“ perkonfigūruoti

Pertvarkyti

Baigę eikite į administratoriaus sritį ir šį kartą turėtumėte pamatyti, kad ji įgalinta.

Konteinerių registras

c) Išbandykite konteinerio prisijungimą naudodami kitą mašiną. Tačiau atkreipkite dėmesį, kad „Docker“ turėtų būti įdiegtas toje sistemoje.

docker prisijungimo gitlab.fosslinux.com: 5050

Numatytoji vaizdų saugyklos vieta yra tokia:

/ var / opt / gitlab / gitlab-rails / shared / register

Jei norite pakeisti kelią, naudokite VIM, kad jį redaguotumėte.

vim / etc / gitlab / gitlab.rb

Pakeiskite šią eilutę:

gitlab_rails ['register_path'] = "/ kelias / į / registras / saugykla"

Tada perkonfigūruokite.

„gitlab-ctl“ perkonfigūruoti

2. Projekto kūrimas

Sukursime naują dujotiekio projektą. Norėdami tai padaryti, eikite į administratoriaus sritį.

Spustelėkite Administratorius

Turėtumėte pamatyti panašų administratoriaus sritį:

Tada spustelėkite naują grupę.

Sukurkite grupę

Savo grupei galite suteikti bet kokį pavadinimą. Tada įveskite projekto URL pavadinimą. Matomumo lygis čia yra „Privatus“; sukūrėme grupę pavadinimu „gitdemo.“

Tada vėl eikite į administratoriaus sritį -> naujas projektas

Naujas projektas

Pavadinkite projektą. Pasirinkite anksčiau sukurtą projekto grupę.

Sukūrę Projektą, į saugyklą galite pridėti failo pavyzdį.

3. Įgalinti projekto konteinerių registrą

Eiti į Projekto parametrai -> Generolas o tada plėstis Matomumas, „Projet“ funkcijos, leidimai.

Tada įjunkite Konteinerių registras.

Įgalinti projekto registrą

Dabar eikite į savo projektą ir pakuočių skyriuje galite pamatyti konteinerių registrą.

Pridėta prie šoninės juostos

4. Išjunkite „AutoDevops“

Eik į savo projektą -> Nustatymai -> CICD

Išjunkite „Auto DevOps“

Tada išsiplėskite „Auto DevOps“ ir panaikinti pasirinkimąNumatytasis „Auto DevOps“ dujotiekis.“

Išjungti funkciją

5. Sukurkite SSH raktą iš kliento / kūrėjo mašinos

Čia mes sukursime ssh raktą ir patvirtinsime savo „GitLab“. Po to mes galime stumti, traukti, klonuoti git saugyklas iš savo kliento mašinos.

a) Paleiskite šią komandą, kad sugeneruotumėte raktą:

ssh-keygen -t rsa -b 4096 -C "darshana @ fosslinux.com "

Kurti raktą

b) Kopijuoti viešąjį raktą:

katė ~ /.ssh / is_rsa_pub

Gauti raktą

Dabar prisijunkite prie „GitLab“ serverio. Eikite į profilį -> SSH raktai

c) Pridėti raktą į nukopijuotą raktą ir išsaugoti.

Pridėti raktą „GitLab“

d) Dabar turime gauti „Clone“ atpirkimo URL naudodami SSH.

Eikite į savo projektą -> Klonas.

Kopijuoti kloną su ssh URL.

Klonas „Repo“

Prieš ketindami klonuoti saugyklą prie savo kompiuterio, turime įdiegti „git“

Įdiekite „git“ kliento-serverio serveryje:

yum įdiegti git -y

Dabar ketiname klonuoti saugyklą ir perkelti savo kodą į „Gitlab“ saugyklą.

Gaukite visuotinę sąranką

git config - pasaulinis vartotojas.pavadinimas "Darshana"
git config - pasaulinis vartotojas.paštas "darshana @ fosslinux.com "

Norėdami klonuoti saugyklą, vykdykite šią komandą:

git klonas git @ git.fosslinuxcom: gitdemo / fosslinux.git

Klonų saugykla

Nukopijuokite šaltinio kodą į klonuotą aplanką.

Eikite į klonuotą aplanką:

cd fosslinux

Dabar perkelkite kodą į saugyklą:

git pridėti .
git statusas
git įsipareigoti -m "demonstraciniai projekto failai"
git stumti

6. Įdiekite „GitLab Runner“

Rekomenduojama „GitLab Runner“ įdiegti serveryje, atskirame nuo to, kur įdiegta „GitLab“. Taip pat galite jį įdiegti tame pačiame serveryje, jei vis tiek to norite.

Čia mes pasitelksime „Docker“ vykdytoją; todėl prieš naudodami „Runner“ turėtume įdiegti „Docker“.

a) „Docker“ vykdytojas

„GitLab Runner“ gali naudoti „Docker“, kad paleistų užduotis naudotojo pateiktuose vaizduose, nes naudojamas „Docker“ vykdytojas.

„Docker“ vykdytojas, naudodamasis „GitLab CI“, prisijungia prie „Docker Engine“ ir kiekvieną paketą paleidžia izoliuotame konteineryje naudodamas iš anksto nustatytą vaizdą, sukonfigūruotą „Gitlab CI“ faile. Pamatysime „Gitlab CI“ failą, kai aptarsime dujotiekį.

Įdiekite saugyklą:
susisukti -L https: // paketai.gitlab.com / install / repositories / runner / gitlab-runner / script.deb.sh | bash

Bėgikas Repo

Įdiekite „Runner“:
„apt-get install“ „gitlab-runner“

Įdiekite „Runner“

Patikrinkite bėgiko būseną:

„gitlab-runner“ būsena

Bėgiko būsena

Registruokis bėgikas

Čia mes pridėsime bendrą bėgiką. Eikite į Administratoriaus sritis -> Bėgikai.

Bendras bėgikas

Tada galite pamatyti Nustatykite bendrai naudojamą bėgiklį rankiniu būdu skyrius. Registruotam bėgikui reikia mūsų „Gitlab“ URL ir prieigos rakto.

Bėgiko žetonas

Paleiskite „Register Runner“

Norėdami užregistruoti bėgiką, vykdykite šią komandą.

gitlab-bėgikų registras

Registruokis bėgikas

Tai turėtų užduoti keletą klausimų. Atsakykite į pateiktus klausimus.

a) Įveskite „GitLab“ egzemplioriaus URL:

Įveskite „gitlab-ci“ koordinatoriaus URL (pvz.,.g. https: // gitlab.com) https: // gitlab.fosslinux.com

b) Įveskite žetoną, kurį gavote norėdami užregistruoti bėgiką:

Įveskite „gitlab-ci“ prieigos raktą šiam bėgikui xxxxxxxxxxxxxxxxxxxxxxxxx

c) Įveskite bėgiko aprašymą; vėliau galėsite tai pakeisti „GitLab“ vartotojo sąsajoje:

Įveskite „gitlab-ci“ aprašą šiam bėgikui [pagrindinio kompiuterio vardas] „Docker-runner“

d) įveskite žymas, susietas su bėgiku; vėliau galėsite tai pakeisti „GitLab“ vartotojo sąsajoje:

Įveskite šio bėgiko gitlab-ci žymas (atskirtus kableliais): master, dev, qa

e) Įveskite „Runner“ vykdytoją:

Įveskite vykdytoją: ssh, docker + machine, docker-ssh + machine, kubernetes, docker, paralels, virtualbox, docker-ssh, shell: docker

f) Jei savo vykdytoju pasirinkote „Docker“, jūsų bus paprašyta naudoti numatytąjį vaizdą projektams, kurie to neapibrėžia .gitlab-ci.yml:

Įveskite „Docker“ vaizdą (pvz.,. rubinas: 2.6): alpinis: vėliausias

Dabar bėgikas sėkmingai užsiregistravo.

Paleiskite „Runner“ iš naujo
„gitlab-runner“ paleiskite iš naujo

Dabar atnaujinkite puslapį „Bėgikai“ (Administratoriaus sritis -> Bėgikai). Galite pamatyti naujai pridėtą bėgiką.

Naujai pridėtas bėgikas

Turime pakeisti kai kuriuos „Runner“ nustatymus. Taigi spustelėkite žetoną.

Bendro bėgiko nustatymas

Tada pasirinkite „Vykdyti nepažymėtus darbus“ ir išsaugokite pakeitimus.

Nepažymėti projektai

Keisti „Gitlab“ bėgikų konfigūracijas

Mes ketiname naudoti docker-in-docker (dind) režimas „GitLab“ vamzdyne, taigi mes turime naudoti privilegijuotas = tiesa mūsų „Docker“ konteineriuose. Todėl mes įjungsime privilegijuotą režimą.

Redaguoti konfigūracijos failą:

vim / etc / gitlab-runner / config.toml

Bėgiko režimas

Pakeiskite skyrių „privilegijuotas“.

privilegijuotas = tiesa

Po pakeitimo galite pamatyti panašų failą.

Modifikuotas bėgikas

Tada paleiskite „Runner“ iš naujo.

„gitlab-runner“ paleiskite iš naujo

7. Konfigūruokite „GitLab PipeLine“ kintamuosius

Pridėti konteinerio registro kintamuosius

Spustelėkite projektą -> Nustatymai -> CICD -> Kintamieji (spustelėkite Išskleisti).

Kintamieji

Pridėkite šį raktą ir pridėkite vertės.

CI_REGISTRY_USER CI_REGISTRY_PASSWORD

Kintamųjų verčių pridėjimas

Čia turite pridėti „GitLab“ prisijungimo vardą ir slaptažodį.

Integruoti su „SonarQube“ serveriu

Gaukite „SonarQube“ prieigos raktą ir pridėkite jį prie „GitLab“. Prisijunkite prie „SonarQube“ serverio.

Eikite į Administravimas> spustelėkite Sauga> Vartotojai> Spustelėkite Žetonai

Sonaro žetonas

Jis turėtų atidaryti raktinį langą.

Generuoti žetoną

Generuoti žetoną bet kokiu pavadinimu -> Kopijuoti žetoną.

Naujas žetonas

Nukopijuokite žetoną ir vėl eikite į „GitLab“. Spustelėkite projektą -> Nustatymai -> CICD -> Kintamieji

Pridėkite naują kintamąjį.

SONARQUBE_TOKEN

Įklijuokite sonaro žetoną į „SONARQUBE_TOKEN“ vertę.

8. Sukurkite vamzdyną

Šie failai turėtų būti saugyklos aplanke

a) „Dockerfile“

Norėdami sukurti savo įvaizdį, mums reikia doko failo. Vykdykite mūsų doko failo vadovą.

Čia yra mūsų doko failas:

NUO ddarshana / alpinenode10 ENV NODE_ENV = production RUN apk add -date curl && rm -rf / var / cache / apk / * RUN mkdir / app WORKDIR / app COPY package.Json . Vykdyti npm įdiegti KOPIJĄ ... CMD ["npm", "pradžia"]

Eikite į savo projektą ir sukurkite naują failą pavadinimu „Docker File.“

Pridėti „Docker“ failą

b) Pridėti sonaras-projektas.savybes

„Sonar“ ypatybių failas turėtų būti mūsų šaltinio kodo šakniniame kataloge, kad nuskaitymo duomenys būtų siunčiami į „SonarQube Server“.

Čia yra mūsų byla:

# Būtinas metaduomenų sonaras.projectKey = fosslinux sonaras.projectName = fosslinux # Kableliais atskirti keliai į katalogus su šaltiniais (būtina) sonaru.šaltiniai =./ # Kalbos sonaras.kalba = js sonaras.profile = node # Šaltinių failų sonaro kodavimas.sourceEncoding = UTF-8

Eikite į savo projektą ir sukurkite „sonaro projektą.savybes.“

Pridėti sonaro nuosavybės failą

Aš. Sukurkite „GitLab-CI“ failą

Eikite į savo projektą ir sukurkite failą pavadinimu „.gitlab-ci.yml.“

Dujotiekio failas

Tai yra mūsų byla.

etapai: - Nešvarūs vaizdai - Kodo kokybė - Kurkite ir skelbkite vaizdų kintamuosius: DOCKER_REGISTRY: gitlab.fosslinux.com: 5050 APP_NAME: „fosslinux linting“: etapas: „Lint images“ vaizdas: mazgas: tik „4-Alpine“: - pagrindinis scenarijus: - „npm install“ - „g dockerlint“ ir & npm „cache clean“ - rasti ./ -name Dockerfile -exec dockerlint  \; codequality: stage: Codequality image: ddarshana / alpine-sonarscanner scenarijus: - sonaras-skaitytuvas -Dsonar.vedėjas.URL = https: // sonaras.fosslinux.com -Dsonar.prisijungti = $ SONARQUBE_TOKEN -Dsonar.projectVersion = $ CI_PIPELINE_ID -Dsonar.projectName = $ CI_PROJECT_NAME + tik $ CI_BUILD_REF_NAME: - pagrindinis leidyba: etapas: sukurkite ir publikuokite vaizdus vaizdas: dokas: 18.09.7 paslaugos: - dokininkas: 18.09.Tik „7-dind“: - pagrindinis scenarijus: - prisijungimas prie doko -u $ CI_REGISTRY_USER -p $ CI_REGISTRY_PASSWORD $ DOCKER_REGISTRY - doko sukūrimas . -t $ DOCKER_REGISTRY / gitdemo / $ APP_NAME: $ CI_PIPELINE_ID - dokininkas stumia $ DOCKER_REGISTRY / gitdemo / $ APP_NAME: $ CI_PIPELINE_ID - echo "nustumtas vaizdas $ APP_NAME: $ CI_PIPELINE_ID" - dokininko atsijungimas $ - dokininko atsijungimas $

Čia mes apibrėžėme tris mūsų dujotiekio etapus:

etapai: - pūkelių vaizdai - kodinė kokybė - kurkite ir skelbkite vaizdus

Dokerio registro ir programos pavadinimo nustatomi kintamieji.

kintamieji: DOCKER_REGISTRY: gitlab.fosslinux.com: 5050 APP_NAME: fosslinux

Kai atliksite pagrindinės šakos pakeitimus, dujotiekis turėtų prasidėti.

Vamzdynas pradėtas

Kaip matote, dujotiekis veikia. Galite pamatyti dujotiekio etapus.

Vamzdynas

Jei visi etapai yra sėkmingi, išvestį galite pamatyti taip.

Baigtas dujotiekis

Galite spustelėti bet kuriuos etapus ir pamatyti jų žurnalus.

Scenos išvestis

a) Patikrinkite konteinerių registrą.

Projektas -> Paketai -> konteinerių registras

Išstumtas vaizdas

Tada galite pamatyti mūsų vaizdą.

b) Patikrinkite sonaro ataskaitą

Prisijunkite prie „SonarQube“ ir galite pamatyti mūsų projekto ataskaitą.

Sonaro ataskaita

Viskas apie „GitLab“ dujotiekio sukūrimą su „GitLab“ konteinerių tarnyba ir „Sonarqube“ integracija.

Kaip parodyti FPS skaitiklį „Linux“ žaidimuose
„Linux“ žaidimai gavo didelį postūmį, kai „Valve“ paskelbė „Linux“ palaikymą „Steam“ klientui ir jų žaidimams 2012 m. Nuo tada daugelis AAA ir indie ž...
Kaip atsisiųsti ir paleisti „Sid Meier Civilization VI“ sistemoje „Linux“
Įvadas į žaidimą „Civilization 6“ yra šiuolaikinė klasikinės koncepcijos, pristatytos „Age of Empires“ žaidimų serijoje, koncepcija. Idėja buvo gana p...
Kaip įdiegti ir žaisti „Doom“ sistemoje „Linux“
Įvadas į Doom „Doom“ serija atsirado 90-aisiais, išleidus originalų „Doom“. Tai buvo tiesioginis hitas, o nuo to laiko žaidimų serija gavo daugybę apd...