Riot Games

tässä ensimmäisessä tutoriaalissa Docker-sarjassa opit:

  • mitä yritämme saavuttaa Riotissa?

  • perusasetukset Docker

  • Basic Docker Pull-komennot

  • miten ajaa Docker Kontit kuin Daemons

  • Jenkinsin perusasetusasetukset

kun aloitin oppia Docker vuosi sitten ja tutkia sen käyttöä minulla oli vaikeuksia löytää hyviä asiakirjoja ja esimerkkejä – jopa tänään monet kuvaavat yksinkertaisia käyttötapauksia, jotka lopulta eivät ole tuotanto valmis. Docker-säiliöillä varustettujen sovellusten tuottaminen vaatii niiden lyhytaikaiseen luonteeseen sopeutumista ja yhden prosessin keskittymistä. Tämä asettaa haasteita sovelluksille, joilla on tietojen pysyvyystarpeita tai moniprosessiarkkitehtuureja.

kuten edellisessä viestissäni mainitsin, käytämme Jenkinsiä avoimen lähdekoodin ohjelmiston perustajana, jonka päälle rakennamme automaatiomme. Jenkins on myös hyvä sovellus osoittaa yksi tapa ajatella” Dockerizing ” sovelluksia. Otamme Jenkinsin käyttöön nämä arkkitehtoniset komponentit mielessä:

  • Jenkins master server (Java-prosessi)

  • Jenkins master data (Plugins, työn määritelmät, jne)

  • Nginx web proxy (käytämme SSL certs jne, Nginx on helppo valinta täällä)

  • rakentaa Orja agentit (koneet joko SSH ’ d osaksi, tai JNLP yhteyden, Jenkins Master)

tästä on hyvä aloittaa. Tämän sarjan blogikirjoituksia aion kattaa tapoja ajatella kaikkia edellä kontteja ja lopuksi pitkälle tarkastella tapoja käyttää Docker kontteja rakentaa orjia. Aluksi luomme Jenkins master Serverin Telakkasäiliöön. Sitten siirrymme käsittelemään tietojen pysyvyyttä ja lisäämällä Web-välityspalvelimen NGINX.

tämä koko blogisarja kattaa seuraavat Docker-käsitteet:

  • tehdä omia Dockerfiles

  • kuvien riippuvuuksien minimointi julkisista kuvista

  • tietojen luominen ja käyttö, mukaan lukien varmuuskopiot

  • luominen containerized ”rakentaa ympäristöjä” käyttämällä kontteja

  • ”salaisten” tietojen käsittely kuvilla ja Jenkineillä

jos et ole vilkaissut Cloudbees Jenkins Docker-kuvaa, aloita siitä, koska se on todella hyvä. Tämä oli minun vertailukohtani, kun ajattelin ensin Jenkinsin ajamista Telakkasäiliössä ja monelle tämä saattaisi riittää. Löydät heidän dokumentaationsa täältä ja heidän git repo/Dockerfile täältä.

tämä ensimmäinen blogi on jaettu kahteen tuntisuunnitelmaan. Jokainen on mitoitettu kestää noin 30 minuuttia loppuun. Ensinnäkin, osa yksi on saada kehitysympäristön valmis ja oppia toimimaan oletuksena Jenkins Docker kontti, että Cloudbees tarjoaa. Toisessa osassa tehdään pohjatyötä tämän kuvan käärimiseksi omaan Telakkatiedostoon ja otetaan kuvan tyylikkäämpi hallinta. Yhdessä ne on suunniteltu sinut alkuun, varsinkin jos et ole koskaan työskennellyt Docker ennen tai ovat suhteellisen uusi Docker-vaikka he olettavat jo tietää ja ymmärtää, miten työskennellä Jenkins. Jos olet kokenut Docker, jotkut materiaali Oppitunti 1 on hieman uudelleen asioita luultavasti jo tietää.

Oppitunti 1: Aseta ja aja ensimmäinen kuva

Let ’ s get you ready to roll. Täällä Riotissa työskentelemme Dockerin (ja Jenkinsin) kanssa Windowsissa, Mac OSX: ssä ja Linuxissa. Mieluummin työskennellä Docker OSX, vaikka se on täysin toimiva Windows koska Docker 1.6. Nykyään on erinomaisia asentajia molemmille käyttöjärjestelmille. Työskentelen OSX-näkökulmasta, mutta samat työkalut ovat olemassa Windowsille.

ENNAKKOVAATIMUKSET:

1. Tarvitset Windows 10 Pro-tai Mac OSX Yosemite 10.10.3 (tai uudempi)

2. Jos käytät Windowsia varmistaaksesi, että sinulla on Windowsin virtualisointi käytössä (katso documentation Docker provides)

nopea huomautus KITEMATIC

Docker 1.8: n ja Docker Toolboxin julkaisun myötä, Docker sisältää nyt ”Kitemaattisen”, näppärän KÄYTTÖLIITTYMÄTYÖKALUN, joka auttaa hallitsemaan ja visualisoimaan, mitä Docker-kuvillesi ja säiliöillesi tapahtuu. Suurin osa tästä opetusohjelmasta keskittyy komentoriviargumenttien käyttöön ja Dockerin kanssa työskentelyyn ilman Kitemaattista käyttöliittymää. Tämä on paremmin altistaa sinut taustalla mekanismeja. Samoin, myöhemmin blogeja alan kattaa käytön säveltää aloittaa ja lopettaa useita kontteja kerralla.

VAIHE 1: INSTALL DOCKER

1. Siirry: https://www.docker.com/docker-mac tai https://www.docker.com/docker-windows

2. Lataa ja asenna Dockerin sopiva versio käyttöjärjestelmällesi

3. Noudata kaikkia asennusohjeita.

4. Varmista, että asennus toimii avaamalla käyttöjärjestelmän suositeltu kuori (pääte OSX: lle, Powershell Windowsille) ajamalla ”Docker Quickstart Terminal”. Windows, Tämä on pikakuvake työpöydälle. OSX, löydät sen sovellukset / Docker kansio. Tarkista seuraavat komennot ja varmista, ettet saa mitään virheitä

docker ps
docker info

5. Ennen kuin teemme mitään muuta, meidän pitäisi lisätä oletusmuisti ja CPU asetukset Docker käyttää. Myöhemmin aiomme virittää Jenkins käyttää enemmän muistia ja jos emme säädä näitä asetuksia ensin, Jenkins voi kaatua.

  • Siirry Docker widget työkalupalkin ja valitse ”Asetukset”

  • siirry Lisäasetukset-välilehteen

  • lisää suorittimen käyttö vähintään 4 ytimeen

6. Lisää muistin käyttö vähintään 8 Gt, mieluiten enemmän, jotain 12 Gt varmuuden vuoksi (jos sinulla on se käytettävissä)

Vaihe 2: vedä ja suorita CLOUDBEES JENKINS CONTAINER

1. Pysy telakan pääteikkunassa.

2. Vedä Jenkins ulosotosta juoksemalla:

docker pull jenkins/jenkins
docker run -p 8080:8080 --name=jenkins-master jenkins/jenkins

3. Huomaa, että” Jenkins initial setup ” – viesti komentotulkin ikkunassa Luo salasanan sinulle. Kirjoita se ylös, koska tarvitset sitä myöhemmin. Jos menetät sen, voit suorittaa ”docker exec jenkins-master cat /var/jenkins_home/secrets/initialAdminPassword” – komennon, jossa säiliösi on käynnissä sen hakemiseksi.

4. Avaa suosikkiselaimesi ja osoita se http://localhost:8080

Huomaathan, että käytän Docker — nimi lippu ja nimi säiliö jenkins-master – Tämä on yleissopimuksen käytän koko tämän blogin. Astioiden nimeäminen on kätevä paras käytäntö, jossa on kolme etua:

1. Se tekee niistä helposti muistettavia ja vuorovaikutuksessa

2. Docker ei salli kahden kontin olevan samannimisiä, mikä estää virheet kuten vahingossa käynnistämällä kaksi identtistä

3. Monet yleiset Docker työkalut (kuten Docker säveltää) käyttää erityisiä säiliö nimiä, joten tottua nimeäminen säiliöt on hyvä paras käytäntö.

Vaihe 3: tehden tästä hieman käytännöllisemmän

edellinen vaihe aloittaa Jenkinsin alkeellisimmilla käynnistysasetuksillaan. Voit jopa nähdä, että Jenkins tarvitsee perus config ja pyytää sinua järjestelmänvalvojan salasana (jonka voit saada lokit, jotka näkyvät näytöllä käynnistyksen aikana). Jos olet kuin Riot, on epätodennäköistä, että käytät Jenkinsiä oletusasetuksilla. Kävellään läpi lisäämällä joitakin hyödyllisiä vaihtoehtoja. Emme vaivaudu konfiguroimaan Jenkins vielä; se riittää tietää, että se voi alkaa ja ajaa.

STEP 3A: DAEMONIZING

you probably don ’ t want to see Jenkins logs spew to standard out most of the time. Käytä siis Docker daemon-lippua käynnistääksesi säiliön (- d).

1. Ctrl-c pääteikkunassa käynnissä säiliösi pysäyttämiseksi

2. Suorita seuraavat komennot

docker rm jenkins-master
docker run -p 8080:8080 --name=jenkins-master -d jenkins/jenkins

nyt sinun pitäisi vain saada hash merkkijono näytetään ja palautetaan terminaaliin. Jos olet uusi Docker, että hash merkkijono on itse asiassa ainutlaatuinen ID säiliösi (hyödyllinen, jos alat automatisoida näitä komentoja).

STEP 3B: Muistiasetukset

meillä on tapana ajaa Jenkinsiä Riot-pelissä muutamilla beefy-asetuksilla. Muistatko, kun olet lisännyt CPU / muisti Docker käyttää aiemmin? Tämä on ensisijainen syy siihen. Peruskäynnistystä varten suorita seuraavat komennot

docker stop jenkins-master
docker rm jenkins-master
docker run -p 8080:8080 --name=jenkins-master -d --env JAVA_OPTS="-Xmx8192m" jenkins/jenkins

sen pitäisi antaa Jenkinsille mukava 8 GB muisti allas ja tilaa käsitellä roskat keräämistä.

vaihe 3c: yhteyden lisääminen

Riotissa, saamme paljon liikennettä Jenkinsin palvelimellemme, joten olemme oppineet antamaan Jenkinsille hieman enemmän tilaa hengittää. Aja seuraavat

docker stop jenkins-master
docker rm jenkins-master

se antaa Jenkinsille hyvän tukijoukon käsittelijöitä ja lippiksen. Sattumalta olet nyt oppinut käyttämään sekä JAVA OPTS että JENKINS OPTS ympäristömuuttujina mielekkäällä tavalla. Huomaa, Tämä toimii, koska miten Cloudbees kätevästi jäsennelty niiden Jenkins Dockerfile.

STEP 4:PUTTING IT ALL TOGETHER

I placed everything we learned here into a simple makefile so you can use make commands to control run your Jenkins docker container. Löydät sen täältä:

  • https://github.com/maxfields2000/docker Jenkins_tutorial/tree/master / tutorial_01

voit käyttää seuraavia komentoja:

  • make build-vetää Jenkinsin kuvan

  • tee run-Runs kontti

  • tee stop-pysäyttää säiliö

  • tee puhdistus-pysähtyy ja poistaa olemassa oleva säiliö

sinun ei tarvitse käyttää makefile, olen vain löytää se helpompaa kuin kirjoittamalla koko suorita komento. Voit helposti laittaa nämä käsikirjoituksen valitsemasi sijaan.

toivottavasti näet, kuinka helppoa on päästä vauhtiin Dockerin ja Jenkinsin kanssa. Olen yrittänyt antaa sinulle joitakin perusvaihtoehtoja ottaa oletuksena Cloudbees Jenkins container ja tehdä siitä hieman käyttökelpoisempi. Cloudbees on monia hyödyllisiä opetusohjelmia käynnissä niiden säiliö, kuten miten esiasennetaan plugins ja tallentaa Jenkins tietoja.

tästä pääsen tuleviin aiheeseen liittyviin postauksiin. Tämä kontti / Kuva on hyödyllinen, mutta sillä on muutamia haittoja: ei johdonmukaista kirjaamista, ei pysyvyyttä, ei web-palvelimen välityspalvelinta sen edessä, eikä puhdas tapa taata, että käytät haluamaasi Jenkinsin versiota. Tämä herättää kysymyksiä, kuten: mitä jos haluat pysyä vanhempi versio? Tai mitä jos haluat käyttää viimeisintä saatavilla olevaa julkaisuaikaa?

seuraavassa oppitunnissa käyn läpi tämän kontin valmistamisen hieman jykevämmäksi. Erityisesti:

  • luominen Oman Dockerfile kääriä Cloudbees base

  • joidenkin ympäristömuuttujien siirtäminen tähän uuteen kuvaan

  • lokikansion luominen, käyttöoikeuksien ja muiden hyödyllisten Jenkins-hakemistojen asettaminen ja Jenkinsin lokien noutaminen sen ollessa käynnissä

Oppitunti 2-Jenkinsin peruskuvan kääre

edellisellä oppitunnilla keskustelin kehitysympäristön perustamisesta Dockerin ajamiseen ja kokeilin Jenkins Docker-kuvaa, jonka Cloudbees tarjosi. Huomasimme, että se oli yksinkertainen ja helppokäyttöinen, hienoja ominaisuuksia kättelyssä. Jotta edistyisimme yksilöidyillä parannusaloilla, tämän oppitunnin käsittelemät Docker-käsitteet ovat:

  • Making your own Dockerfile

  • ympäristömuuttujien asettaminen Telakkatiedostoon

  • kansioiden ja käyttöoikeuksien luominen Telakkatiedostoon

  • Docker exec: n käyttäminen komentojen ajamiseen käynnissä olevaa säiliötä vastaan

MAKING your BASE DOCKERFILE

we want to make some changes to how Jenkins starts by default. Edellisessä blogissa käsittelimme tätä luomalla makefilen, joka kulki argumenteissa ympäristömuuttujina. Koska haluamme tehdä tämän joka kerta, voimme siirtää ne omaan Telakkatiedostoomme. Lisäksi, meidän oma Dockerfile antaa meidän lukita versio Jenkins käytämme siltä varalta Cloudbees päivittää omansa ja emme ole valmiita päivittää.

teemme tämän neljässä vaiheessa:

1. Luo työhakemisto

2. Luo suosikkitekstieditorissasi uusi tiedosto”Dockerfile”

3. Lisää seuraava tiedosto ja tallenna se:

FROM jenkins/jenkins:2.112LABEL maintainer=""

4. Sitten komentorivillä enter:

docker build -t myjenkins .

otimme Jenkinsin kuvasta tietyn version telakka repolta. Löydät kaikki saatavilla olevat versiot täältä:

  • voit aina asettaa FROM-lausekkeen olemaan mikä tahansa versio kuvasta on saatavilla. Kuitenkin, et voi vain asettaa versio Mikä tahansa versio Jenkins haluat. Tämä on kuvan versio ” tag ”tai” label”, ja Cloudbees on tarpeeksi mukava tehdä se vastaa Jenkins versio sisällä kuvan. Cloudbees tarjoaa ”jenkins/Jenkins ”kätevänä tapana saada uusin versio, tai” jenkins/Jenkins:lts ”saada viimeisin” pitkän aikavälin tuki ” versio. Tässä esimerkissä käytän tiettyä versiota. Nämä tagit, jotka merkitsevät julkaisutyyppejä, ovat mahtavia, mutta niiden käyttäminen tarkoittaa, että Jenkinsin versio saattaa muuttua allasi, mikä voi aiheuttaa komplikaatioita, jos et ollut valmis päivittämään. Suosittelen ”version lukitus” yleisenä parhaana käytäntönä, kun käsitellään mitään riippuvuuksia Docker tai muita riippuvuudenhallintatyökaluja. Haluat asioiden muuttuvan silloin, kun olet sitä tarkoittanut, et aiemmin. Siksi käytän tässä tiettyä versiota.

    testaamalla uutta DOCKERFILE

    voimme siirtyä kuvaan hyvin helposti muokkaamalla docker run-komennon seuraavasti:

    docker run -p 8080:8080 --name=jenkins-master -d --env JAVA_OPTS="-Xmx8192m" --env JENKINS_OPTS=" --handlerCountMax=300" myjenkins

    nyt voimme puhdistaa ympäristömuuttujat laittamalla ne omaan Telakkatiedostoomme.

    ympäristömuuttujien lisääminen DOCKERFILEESEEMME

    on helppoa lisätä oletusasetukset esimerkiksi ympäristömuuttujille Dockerfiles-tiedostoihin. Tämä tarjoaa myös mukavaa pala itse dokumentointi. Ja koska voit aina korvata nämä ajettaessa Docker kontti, ei ole oikeastaan mitään varjopuolia.

    1. Lisää Dockerfile-tiedostoosi seuraavat rivit ”ylläpitäjä” – rivin jälkeen:

    ENV JAVA_OPTS="-Xmx8192m"ENV JENKINS_OPTS=" --handlerCountMax=300"

    2. Tallenna ja rakenna Kuva uudelleen:

    • docker build-t myjenkins .

    docker build -t myjenkins .

    aika yksinkertaista! Voit testata, että se toimii edelleen syöttämällä seuraavat kolme komentoa:

    docker stop jenkins-master
    docker rm jenkins-master
    docker run -p 8080:8080 --name=jenkins-master -d myjenkins

    imagosi pitäisi käynnistyä heti! Mutta mistä tietää ympäristömuuttujien toimineen? Yksinkertainen: samalla tavalla tarkistaisit, mitkä argumentit käynnistivät Jenkins-sovelluksesi normaalisti ps: llä. Ja tämä toimii, vaikka kehittyisit Windowsissa.

    PERUSKOMENNON suorittaminen KONTTIASI vastaan

    varmistaaksemme, että Java-ja Jenkins-asetukset on asetettu oikein voimme suorittaa ps: n säiliössämme ja nähdä käynnissä olevan Jenkins Java-prosessin docker exec

    docker exec jenkins-master ps -ef | grep java

    sinun pitäisi nähdä jotain vastaavaa tule takaisin

    jenkins 1 0 99 21:28 ? 00:00:35 java -Xmx8192m -jar /usr/share/jenkins/jenkins.war --handlerCountMax=300

    Tästä, voit helposti nähdä meidän asetukset ovat jumissa. docker exec on yksinkertainen tapa suorittaa komentotulkin komentoja säiliön sisällä ja myös uskomattoman yksinkertainen tapa tarkastaa ne. Tämä toimii jopa Windowsissa, koska muista, että komento ”exec”: n jälkeen suoritetaan säiliön sisällä ja siten perustuu siihen, mitä pohjakuvaa säiliösi käyttää.

    LOKIKANSIOTA

    edellisessä blogissa huomasimme, että menetimme näkyvyyden Jenkinsin lokeihin ajaessamme konttiamme daemonizen lipulla (-d). Haluamme käyttää sisäänrakennettu Jenkins ominaisuus asettaa lokikansio. Meidän on tehtävä tämä Telakkatiedostossamme-ja annettava sitten hakkuuvaihtoehto Jenkinsille.

    muokataan Dockerfileetä uudelleen. ”Ylläpitäjän” ja ensimmäisen ENV-rivin väliin lisäämme seuraavan

    RUN mkdir /var/log/jenkins

    asetamme komennon tähän paikkaan tiedostoon noudattaaksemme parhaita käytäntöjä. On todennäköisempää, että muutamme ympäristömuuttujia kuin nämä asetushakemistot, ja jokaisesta Dockerfile-tiedoston komentorivistä tulee olennaisesti oma kuvakerroksensa. Voit maksimoida kerroksen uudelleenkäyttöä laittamalla usein muuttunut kohteita lähellä pohjaa.

    rakenna Kuva Nyt uudelleen:

    docker build -t myjenkins

    saat virheen, joka näyttää

    ---> Running in 0b5ac2bce13bmkdir: cannot create directory '/var/log/jenkins': Permission denied

    ei hätää. Tämä johtuu siitä, että oletussäiliö asettaa käynnissä olevan käyttäjän ”Jenkins” – käyttäjäksi. Jos katsoo heidän Dockerfileään (löytyy täältä: https://github.com/ Jenkinsci/docker/blob/master / Dockerfile), kannattaa nähdä, lähellä pohjaa

    USER ${user}

    tämä syntaksi saattaa olla hieman sekava. Se käyttää Docker rakentaa ”argumentit” voit määritellä käyttäjän. Jos katsot Docker-tiedostoa, löydät oletusarvon. Katso Dockerfile-tiedoston yläreunasta

    ARG user=jenkins

    tämä luo” user ” – argumentin (ARG) ja asettaa sen Jenkinsin käyttäjälle. Tämän avulla voit muuttaa käyttäjätunnusta, jota Jenkins käyttää, kun soitat docker build –build-arg somevariable=somevalue. Huomaa, että tämä toimii vain, jos rakennat Dockerfile tyhjästä. Näitä arvoja ei voi muuttaa docker pullilla tai docker Runilla. Voit lukea lisää build-argumenteista täältä. Koska käytämme esirakennettua versiota FROM-lausekkeessamme, päädymme oletuskäyttäjäksi: ”jenkins”.

    normaalissa Linuxissa kansion luomiseen käytettiin vain sudoa tai jotain muuta keinoa (/var/log on root: n omistuksessa). Onneksi meille Docker antaa meidän vaihtaa käyttäjiä.

    lisää Dockerfileeseesi seuraava:

    1. Ennen ajoa mkdir-rivi lisää

    USER root

    2. Ajon jälkeen mkdir rivi lisää

    RUN chown -R jenkins:jenkins /var/log/jenkins

    3. Juoksun jälkeen chown line lisää:

    USER jenkins

    huomaa, että meidän täytyi myös lisätä chown-komento, koska haluamme, että Jenkins-käyttäjä voi kirjoittaa kansioon. Seuraavaksi asetamme root ja sitten nollata Jenkins niin, että Dockerfile käyttäytyminen säilyy.

    rakenna Kuva Nyt uudelleen:

    docker build -t myjenkins .

    ja… virheesi pitäisi olla poissa.

    Lokihakemistojoukolla (Huomaa: voit sijoittaa tämän kansion minne haluat, käytämme /var/log johdonmukaisuutta varten) voimme nyt käskeä Jenkinsiä kirjoittamaan kyseiseen kansioon käynnistettäessä muuttamalla jenkins_opts-ympäristömuuttujia.

    muokkaa Dockerfileessäsi jenkins_opts-riviä tämän näköiseksi:

    • ENV JENKINS_OPTS= ” –handlerCountMax=300 — logfile= / var/log/Jenkins / Jenkins.loki”

    ENV JENKINS_OPTS="--handlerCountMax=300 --logfile=/var/log/jenkins/jenkins.log"

    nyt rakenna kuvasi vielä kerran

    docker build -t myjenkins .

    kokeillaan uutta kuvaa ja saadaanko lokitiedostoa seurattua! Kokeile seuraavia komentoja

    docker stop jenkins-master
    docker rm jenkins-master
    docker run -p 8080:8080 --name=jenkins-master -d myjenkins

    kontin ollessa käynnissä voimme seurata lokitiedostoa, jos kaikki toimi

    docker exec jenkins-master tail -f /var/log/jenkins/jenkins.log

    hakea lokit, jos JENKINS kaatuu

    aika bonuskierrokselle! Docker on mielenkiintoinen ongelma, jos Jenkins kaatuu. Kontti lakkaa toimimasta, eikä docker exec enää toimi. Joten mitä tehdä?

    keskustelemme edistyneemmistä tavoista jatkaa lokitiedostoa myöhemmin. Toistaiseksi, koska säiliö on pysäytetty, voimme kopioida tiedostoja siitä docker cp-komennolla. Simuloidaan kaatumista pysäyttämällä kontti ja noudetaan sitten lokit:

    1. ctrl-c poistuaksesi lokitiedoston pyrstöstä

    2. Suorita seuraavat komennot

    docker stop jenkins-master
    docker cp jenkins-master:/var/log/jenkins/jenkins.log jenkins.log
    cat jenkins.log

    LOPPUAJATUKSIA

    löydät kaikki työt tutoriaalissani Git repo (ja päivitetty convenience makefile) täältä:

    • https://github.com/maxfields2000/docker Jenkins_tutorial/tree/master / tutorial_02

    tekemällä oman Dockerfile, joka käärii Cloudbees tiedosto, pystyimme tekemään elämän hieman helpompaa itsellemme. Perustimme kätevän säilytyspaikan lokeille ja opettelimme katsomaan niitä docker exec-komennolla. Siirsimme oletusasetuksemme Dockerfile-tiedostoon ja nyt voimme tallentaa tämän lähdeohjaukseen hyvänä omadokumentaationa.

    meillä on edelleen tietojen pysyvyyshaaste. Olemme oppineet vetämään lokitiedostot pois pysäytetystä säiliöstä (kätevä, kun Jenkins kaatuu). Jos konttimme pysähtyy, menetämme silti kaikki luomamme työpaikat. Ilman sinnikkyyttä tästä Jenkinsin kuvasta on siis hyötyä vain paikalliselle kehittämiselle ja testaukselle.

    tästä päästään seuraavaan artikkeliin. Kun perustuksemme ovat paikoillaan – oma Telakkakääreemme, joka on lukittu kätevään Jenkinsin versioon – voimme ratkaista pysyvyysongelman. Seuraavassa kirjoituksessa tarkastellaan näitä käsitteitä:

    • säilyttäminen Jenkins työtä ja Plugin tiedot

    • Docker tietojen pysyvyys volyymien

    • Datamääräsäiliön tekeminen

    • volyymitietojen jakaminen muiden säiliöiden kanssa

    lisätietoja tästä sarjasta:

    Part I: Thinking Inside The Container
    Part II: Putting Jenkins in a Docker Container (this article)
    Part III: Docker & Jenkins: Data That Persistes
    Part IV: Jenkins, Docker, Proxies, and Compose
    Part V: Taking Control of Your Docker Image
    Part VI: Building with Jenkins Inside an Ephemeral Docker Container
    Part VII: Tutorial: Building with Jenkins Inside an Ephemeral Docker Container
    Part VIII: DockerCon Talk and the Story So Far

Vastaa

Sähköpostiosoitettasi ei julkaista.