Konfigurer en Jenkins-server ved hjælp af Docker

Konfigurer En Jenkins Server Ved Hjaelp Af Docker



Jenkins er en udbredt open source-automatiseringsserver, der hjælper med at automatisere de forskellige dele af softwareudviklingsprocessen, herunder opbygning, test og implementering af applikationer.

Docker er en containeriseringsplatform, der giver os mulighed for at køre applikationerne og tjenesterne i isolerede miljøer kendt som containere.







I denne tutorial lærer vi, hvordan man kombinerer Jenkins med Docker, som giver os mulighed for at skabe en skalerbar og bærbar Jenkins server.



BEMÆRK: I denne vejledning vil vi bruge det officielle jenkins/jenkins-billede fra Docker Hub-depotet. Dette billede indeholder den aktuelle Long-Term Support (LTS) udgivelse af Jenkins, som er produktionsklar.



Opret et netværk

Det første skridt er at oprette et nyt Docker-netværk for at isolere Jenkins-forekomsten. Dette letter en bedre kommunikation.





For at oprette et brokoblet netværk i Docker kan vi køre følgende kommando:

$ docker netværk oprette jenkins


Dette skaber et broforbundet netværk kaldet Jenkins.



Kør Jenkins Docker Container

Når vi har konfigureret netværket, kan vi køre Jenkins-beholderen ved hjælp af det officielle Jenkins Docker-billede.

Vi specificerer også netværket og konfigurerer en volumen til Jenkins-datapersistens. Kommandoen er som følger:

docker run \
--navn jenkins-docker \
--rm \
--løsrive \
--privilegeret \
--netværk jenkins \
--netværksalias havnearbejder \
--env DOCKER_TLS_CERTDIR = / certifikater \
--bind jenkins-docker-certifikater: / certifikater / klient \
--bind jenkins-data: / var / jenkins_home \
--offentliggøre 2376 : 2376 \
docker:fra \
--lager-driver overlejring 2



Den forrige kommando lancerer en Docker-in-Docker (DinD) container ved navn 'jenkins-docker' med forhøjede privilegier og netværkskonfigurationer.

–rm flaget sikrer, at beholderen automatisk fjernes, når den stopper. Containeren er forbundet til Jenkins-netværket med netværksaliaset som 'docker' som oprettet i det foregående trin.

Vi indstiller derefter miljøvariablerne for Docker TLS-certifikaterne og monterer volumenerne til certifikatlagring og Jenkins-data.

I næste afsnit udgiver vi port 2376 til Docker-dæmonkommunikationen.

Til sidst specificerer vi docker:dind-billedet og konfigurerer lagerdriveren til at bruge overlay2.

Få adgang til Jenkins Web UI

Når vi starter containeren, kan vi få adgang til Jenkins-forekomsten fra en webbrowser ved hjælp af adresse.

Hvis du ønsker at køre en simpel Jenkins-container, kan du bruge følgende kommando:

$ docker køre -d -s 8080 : 8080 -s 50.000 : 50.000 --navn jenkins \
--netværk jenkins \
-i jenkins_home: / var / jenkins_home \
jenkins / jenkins:lts


Dette kører Jenkins-serveren uden at skulle konfigurere de andre funktioner såsom volumener, bindeporte og mere.

Du kan derefter få adgang til Jenkins-instansen på .


Når Jenkins er klar, vil din browser give dig mulighed for hurtigt at konfigurere Jenkins-serveren med egenskaberne, som du ønsker.

Når det er konfigureret, skal du låse Jenkins op ved at angive administratoradgangskoden. Du kan finde det ved at køre følgende kommando:

$ docker logger jenkins


Kommandoen viser dig logfilerne for containeren, som inkluderer Jenkins-adgangskoden.




Det næste trin er at vælge og installere de plugins, som du ønsker at bruge til din Jenkins-instans. Hvis du bruger Jenkins for første gang, skal du vælge de anbefalede plugins.


Dette skulle gøre det muligt for Jenkins at downloade og installere alle standard plugins, som giver dig mulighed for at interagere med Jenkins pipelines med lethed.

Konklusion

I denne vejledning lærte du, hvordan du kan konfigurere en Jenkins-server som container ved hjælp af Docker og det officielle Jenkins-billede.