‫Deze sectie gaat helemaal over container-image-registers.
‫Er komt veel bij
‫kijken, dus we beginnen eigenlijk met te zeggen dat je een image-register nodig hebt in je plan.
‫Het is niet echt een optioneel onderdeel van het containerecosysteem. De manier waarop Docker en andere tools zijn
‫ontworpen, is dat ze een plaats nodig hebben, buiten uw servers en buiten uw ontwikkelaarswerkstations, om uw afbeeldingen daadwerkelijk
‫op te slaan.
‫Technisch gezien kunnen het zip-bestanden zijn en je kunt ze exporteren en importeren, maar dat is echt een
‫lastige situatie.
‫U wilt dus echt een register plannen, of het nu op internet is of een privéregister.
‫We gaan hier een aantal dingen en verschillende lezingen doornemen, waar we het hebben
‫over de details van Docker Hub en enkele van de auto-build-opties daar.
‫We gaan ons concentreren op de Docker Store voor een lezing en hoe dat eigenlijk anders is dan Hub.
‫En dan de Docker Cloud-optie, die eigenlijk ook anders is dan Hub, maar ook een add-on voor
‫de Docker-toolset,
‫en die je misschien kan helpen om servers en je spullen gemakkelijker in de cloud te implementeren.
‫We hebben nu ook de nieuwe Swarms-functie in Docker Cloud waar ik een specifieke lezing over zal houden.
‫En dan ga je leren hoe je je eigen register kunt bouwen en het kunt implementeren op je lokale computer of
‫op een Docker Swarm om als privé register te gebruiken.
‫Het is eigenlijk open source. En dan zullen we enkele van de
‫registeropties van derden noemen voor het geval u Docker Hub of het open-source Docker-register niet wilt gebruiken.
‫In deze lezing gaan we enkele van de geavanceerde onderwerpen van Docker Hub behandelen.
‫Nu is het het meest populaire image-register ter wereld voor containers, maar het is niet de enige.
‫Laten we eens kijken wat het
‫doet naast wat we tot nu toe al hebben besproken. Samengevat, Hub is een register, maar er zit ook een afbeelding in.
‫Dat is normaal gesproken geen onderdeel van, bijvoorbeeld,
‫het open-source register en dus bevat het een beetje extra dingen waarmee je
‫afbeeldingen on-the-fly kunt bouwen.
‫We gaan hier op enkele van die functies in.
‫En praat dan ook over het koppelen van uw GitHub- en BitBucket-accounts aan Hub en het bekijken van enkele
‫van de auto-build-functies voor het bouwen van uw afbeeldingen op basis van de commits.
‫En dan gaan we enkele functies laten zien rond het aan elkaar koppelen van afbeeldingen, zodat u het gemakkelijker kunt maken
‫om ervoor te zorgen dat uw afbeeldingen altijd up-to-date zijn.
‫We hebben al iets over Docker Hub besproken toen
‫we eerder in deze cursus voor het eerst over afbeeldingen hoorden. Maar ik wilde enkele van de andere functies
‫doornemen die we misschien niet hebben besproken, en dat dan vergelijken met de Docker Store, en dan
‫praten over wat Docker Cloud voor ons zou kunnen doen voordat we daadwerkelijk andere registeropties voor onszelf gaan gebruiken .
‫Het is duidelijk dat Docker Hub een register is.
‫Daar hebben we het de hele cursus over gehad.
‫Het is hoe we al onze afbeeldingen ophalen en het is het standaardregister voor Docker. Maar het is lang niet de
‫enige.
‫Laten we het hebben over wat het kan doen naast wat we al hebben gedaan.
‫We kunnen duidelijk zien dat ik hier repositories heb. Je kunt zien dat ik hier eigenlijk minstens één
‫privé heb. Voor de privé
‫krijg je er een gratis en voor de rest moet je betalen.
‫U stelt een factureringsaccount in zoals normaal en u betaalt daarvoor. Wanneer u repositories aanmaakt en op elk van uw afbeeldingen,
‫of ze nu openbaar of privé zijn, kunt u ervoor kiezen om mensen machtigingen te geven.
‫Dit is hoe mijn weergave eruit zou zien voor een repository die ik bezit.
‫Dit is toevallig een openbare.
‫Als ik naar Instellingen ging, kun je zien dat ik heen en weer kan schakelen tussen privé en
‫openbaar maken.
‫Ik kan het verwijderen. Ik kan webhooks maken en de webhooks zijn erg handig wanneer je afbeeldingen
‫worden gebouwd en in Docker Hub worden gepusht.
‫Je kunt het een webhook naar een andere service laten sturen, zoals Jenkins of Codeship, of Travis
‫CI, of iets dergelijks, om geautomatiseerde builds door te laten gaan.
‫Die webhooks zijn er om u te helpen het proces te automatiseren om uw code helemaal van iets als Git of GitHub naar
‫Docker te krijgen en helemaal naar uw servers waar u ze wilt uitvoeren. De medewerkers is het machtigingengebied waar u
‫machtigingen kunt instellen voor andere mensen om dingen met uw afbeelding
‫te doen.
‫En dan hebben we ook nog Organisaties. U hebt dus uw eigen machtigingen voor uw eigen repositories en vervolgens
‫kunt u anderen machtigingen geven voor uw repositories. Maar als u organisaties wilt creëren, kunt u dat
‫ook doen.
‫Ze zijn helemaal gratis.
‫Onder deze organisatie kan ik bijvoorbeeld al hun repo's zien. En dan, omdat ik de machtigingen voor
‫elk heb, kan ik echt naar binnen gaan en al hun instellingen wijzigen.
‫Je kunt zien dat ik het teamlidmaatschap kan controleren.
‫Ik kan de facturering beheren zoals u normaal zou doen voor privéafbeeldingen.
‫Dit lijkt erg op GitHub, als je GitHub al hebt gebruikt, of als je ooit voor iets op GitHub hebt betaald.
‫Het is vergelijkbaar, waarbij alles wat open-source is gratis is en alles wat je
‫privé wilt houden, moet betalen voor groepsabonnementen. En de organisaties werken op dezelfde manier als GitHub.
‫Er zit niet veel anders op.
‫Ik wil je een paar belangrijke dingen laten zien die je moet weten als je het wilt gaan gebruiken.
‫Een daarvan is, als je een GitHub of BitBucket gebruikt om je code op te slaan, klik dan niet op deze knop om
‫je repository te maken.
‫Voer ook geen Docker-push uit voordat u deze eerst hebt gemaakt, want wat u echt wilt doen, is hier naar
‫boven gaan om een geautomatiseerde build te maken en te maken. Met de geautomatiseerde build kan Docker Hub dit
‫CI-pad maken dat automatisch uw afbeelding bouwt op basis van code-commits.
‫Dit is vergelijkbaar met de omgekeerde webhook.
‫De webhooks waar we een tijdje geleden naar hebben gekeken, zijn voor Docker Hub om iets anders te laten weten dat het klaar is
‫met een afbeelding.
‫Maar met dit proces kan Docker Hub op de hoogte worden gesteld wanneer er iets anders gebeurt.
‫Ik heb het altijd ingesteld voor het automatisch bouwen van mijn eigen repositories.
‫In dit geval heb ik bijvoorbeeld gewoon een repository gekozen waartoe ik toegang heb en GitHub.
‫En dan geef ik het een korte beschrijving en kan ik een repository maken.
‫Maar in dit geval weet het dat het van GitHub komt.
‫Elke keer dat er een commit is op basis van bepaalde vereisten, of bepaalde branches, zal het mijn imago
‫in een oogwenk opbouwen.
‫Dan krijg ik een leuk mailtje dat het gelukt is of niet.
‫Daarom zie je op veel afbeeldingen dat het geautomatiseerde builds zijn.
‫Dat is slechts een indicatie van de kwaliteit, want het laat zien dat deze afbeelding waarschijnlijk altijd up-to-date
‫is met waar de broncode zich ook bevindt. Je zult hier zien, zoals de Jekyll-server die we
‫eerder in deze cursus hebben gebruikt, dat ik hier enkele van deze geautomatiseerde opties heb die ik niet had in de vorige
‫repository die niet was ingesteld voor automatisering.
‫Dus hier heb ik build-details, build-instellingen. Je kunt zien dat elke keer dat het is gebouwd,
‫het succesvol is in de geschiedenis. En dan kan ik in de build-instellingen kiezen welke branches ik wil bouwen. Iets dat ik ten
‫zeerste aanbeveel, is dat, hier onder repository-links, als je
‫afbeeldingen bouwt op Docker Hub, en je een from-statement gebruikt dat je uit een
‫andere afbeelding haalt, je hier repository-links wilt instellen, zodat elke keer dat de software verandert, uw afbeelding
‫opnieuw wordt opgebouwd.
‫En dat is een groot probleem, want na verloop van tijd zal je afbeelding er afhankelijk van zijn, en het zal
‫moeten worden bijgewerkt wanneer die zelf worden
‫bijgewerkt, misschien op basis van beveiligingsvereisten of nieuwe bugfixes. En dus, op de mijne, omdat Ruby en Jekyll
‫in mijn afbeelding worden uitgevoerd, en de verklaring in het Docker-bestand is eigenlijk de Jekyll, heb
‫ik die hier geplaatst, zodat elke keer dat die afbeeldingen opnieuw worden opgebouwd, de mijne dan opnieuw wordt opgebouwd.
‫Als u ook een build-trigger wilt maken... een build-trigger is een andere inkomende manier om automatisch een
‫afbeelding te laten bouwen, en misschien heb je andere software die geen GitHub is en die je wilt
‫laten bouwen wanneer er iets gebeurt.
‫U kunt daar dus die unieke post-URL's maken.