Docker-parameters – de beste parameters!

Als u een ervaren systeembeheerder bent, heeft u er wellicht wel eens van gehoord "Dokker" gehoord en weet al wat het is. Voor degenen die het niet weten: Docker is een open source-technologie waarmee applicaties in geïsoleerde containers kunnen worden uitgevoerd.

Wat is een Docker-parameter?

Een Docker-parameter is een waarde die wordt doorgegeven aan een Docker-opdracht. Deze waarde kan worden opgegeven in de vorm van een omgevingsvariabele of rechtstreeks in de opdracht zelf.

De verschillende typen Docker-parameters

De opdracht docker run heeft veel verschillende opties en parameters die u kunt aanpassen aan uw behoeften. In deze artikel We zullen ons concentreren op de verschillende soorten Docker-parameters.

Er zijn vier hoofdtypen Docker-parameters: omgevingsvariabelen, afzonderlijke opdrachten, combinaties van opdrachten en bestanden. Elk type heeft zijn eigen Voordelen en nadelenwaarmee rekening moet worden gehouden.

Omgevingsvariabelen zijn eenvoudig te gebruiken en stellen u in staat bepaalde delen van uw omgeving aan te passen zonder dat u uw code hoeft te wijzigen. Ze kunnen echter alleen eenvoudige gegevenstypen opslaan, wat betekent dat ze niet geschikt zijn voor complexere applicatieconfiguraties.

Met enkele opdrachten kunt u eenvoudig een opdracht uitvoeren zonder dat u een bestand hoeft te maken. Dit kan handig zijn als u alleen een specifieke actie wilt uitvoeren zonder een volledige applicatie te bouwen. Individuele commando's zijn echter niet schaalbaar en daarom mogelijk niet geschikt voor grotere toepassingen.

Met combinaties van opdrachten kunt u meerdere opdrachten in een bestand opslaan en deze vervolgens uitvoeren. Dit is handig wanneer u meerdere acties wilt uitvoeren zonder telkens de code te hoeven wijzigen. Combinaties van opdrachten zijn echter vaak verwarrend en moeilijk te debuggen.

Bestanden zijn de meest flexibele manier om uw code op te slaan en uit te voeren. Bestanden kunnen eenvoudig worden aangemaakt en aangepast, waardoor ze geschikt zijn voor alle soorten toepassingen. Bestanden zijn echter vaak verwarrend en moeilijk te debuggen.

De beste Docker-parameters

De beste Docker-parameters

Als u Docker gebruikt, kunt u verschillende opties opgeven om het gedrag van de container te bepalen. In dit artikel worden de beste en meest gebruikte Docker-parameters uitgelegd.

–name: Deze parameter geeft de container een naam. Als u geen naam opgeeft, wordt er een willekeurige naam gegenereerd. De naam moet uniek zijn, zodat u de container gemakkelijk kunt identificeren.

–detach / -d: deze parameter voert de container op de achtergrond uit. Standaard draait de container op de voorgrond en blijft de opdrachtregel geblokkeerd totdat de container wordt afgesloten of wordt geannuleerd met Ctrl+C. Als u de container op de achtergrond wilt uitvoeren, moet u de parameter –detach opgeven.

–publish / -p: deze parameter brengt een verbinding tot stand tussen een containerpoort en een hostpoort. Als u geen verbinding maakt, kunt u de haven van de container niet van buitenaf bereiken. Als u meerdere poorten wilt publiceren, kunt u de parameter –publish meerdere keren opgeven.

–interactive / -i: Deze parameter zorgt ervoor dat de container op de voorgrond draait en de opdrachtregel niet wordt geblokkeerd totdat de container wordt afgesloten of wordt afgebroken met Ctrl + C.

–tty / -t: Deze parameter simuleert een terminal in de container. Als u deze parameter opgeeft, kunt u in de container typen en opdrachten uitvoeren. Als deze parameter niet is opgegeven, is het niet mogelijk om in de container te typen of opdrachten uit te voeren.

–rm: deze parameter verwijdert de container nadat deze is afgesloten. Als u deze parameter niet opgeeft, blijft de container intact en kan deze later worden hersteld.

–volume / -v: deze parameter maakt een verbinding tussen een hostmap en een containermap. Wanneer u verbinding maakt, kunt u bestanden van de hostmap naar de container kopiëren en omgekeerd.

–workdir / -w: Deze parameter stelt de werkmap in de container in. Standaard is de werkmap ingesteld op /root.

–user / -u: Met deze parameter wordt de gebruiker in de container ingesteld. Standaard wordt de gebruikersroot gebruikt.
Dit zijn slechts enkele van de vele Docker-parameters die beschikbaar zijn. Zie de Docker-documentatie voor meer informatie.

–restart: deze parameter specificeert hoe Docker een container opnieuw moet opstarten als deze afsluit of crasht. Er zijn verschillende opties voor deze parameter: nee, bij storing, altijd en tenzij-gestopt. De standaardinstelling is “nee”, wat betekent dat de container niet opnieuw wordt opgestart. Als u “on-failure” opgeeft, wordt de container opnieuw opgestart als deze wordt uitgevoerd met een Fout wordt beëindigd (bijvoorbeeld vanwege een crash). “Altijd” betekent dat de container altijd opnieuw wordt opgestart, ook als deze netjes is afgesloten. “Tenzij gestopt” is vergelijkbaar met “altijd”, maar hier wordt de container niet onbeheerd achtergelaten; Zodra u de opdracht “docker stop” hebt uitgevoerd om de container te stoppen, wordt deze niet meer opnieuw opgestart.

–hostname: Zoals de naam al doet vermoeden, stelt deze parameter de hostnaam van de container in. De standaardwaarde is de naam van de container, of een willekeurige naam als er geen –name is opgegeven.

–interactief of -i: Met deze parameter kunt u inloggen op en communiceren met een actieve container. U kunt bijvoorbeeld een terminal in de container starten en opdrachten uitvoeren. Als u deze parameter niet opgeeft, kunt u zich niet aanmelden en met de container communiceren.

–volume of -v: Deze parameter maakt een verbinding tussen een hostmap en een containermap. Wanneer u verbinding maakt, kunt u bestanden van de hostmap naar de container kopiëren en omgekeerd.

Voor- en nadelen van een Docker-parameter

Het belangrijkste voordeel van een Docker-parameter is misschien wel dat deze de flexibiliteit en het aanpassingsvermogen van een applicatie vergroot. Specifieke omgevingsvariabelen kunnen bijvoorbeeld worden doorgegeven aan een specifieke applicatie. Toegang tot hostsysteembronnen kan ook worden beheerd via de parameter.

Een ander voordeel is dat bepaalde beveiligingsfuncties ook via Docker-parameters aan een applicatie kunnen worden gekoppeld. Zo kan er bijvoorbeeld voor worden gezorgd dat alleen geautoriseerde gebruikers toegang krijgen tot een applicatie.

Een nadeel van Docker-parameters is dat ze doorgaans alleen beschikbaar zijn voor ontwikkelaars en systeembeheerders. Ze zijn meestal niet zichtbaar of begrijpelijk voor normale gebruikers. Daarom kan het moeilijk zijn om een ​​applicatie aan te passen als u de Docker-parameters niet kent.

Docker-runreferentie

De meeste Docker-opdrachten beginnen met de opdracht “docker”, gevolgd door een subopdracht. docker run is een typische subopdracht en wordt gebruikt om een ​​nieuwe container uit te voeren.

De opdracht docker run heeft veel verschillende opties en parameters die u kunt opgeven om de container te maken en te configureren die u wilt uitvoeren. In dit artikel zullen we kijken naar de beste parameters voor de docker run-opdracht.

Exclusieve opties voor operators

De meeste operatoropties zijn niet exclusief voor operators, maar zijn ook beschikbaar voor andere gebruikers. Er zijn echter enkele opties die uitsluitend voor operators bedoeld zijn. Deze omvatten:

–log-level : Stelt het logniveau in. Alleen operators hebben toegang tot deze optie om de logboekregistratie voor hun installatie aan te passen.

–storage-opt : Hiermee kan de operator extra opslagopties voor zijn installatie configureren. Dit is handig wanneer de operator een specifieke opslag-backend gebruikt die niet door Docker wordt ondersteund.

–formaat: Hiermee kan de operator het formaat van de docker-informatie-uitvoer aanpassen. Dit is handig als de operator de informatie in een specifieke vorm verder wil verwerken.

Vrijstaand versus voorgrond

Wanneer u een container uitvoert met de opdracht docker run, wordt deze altijd op de voorgrond uitgevoerd. Dit betekent dat de container de Console van het hostsysteem en u kunt de opdracht niet afsluiten zonder de container te stoppen.

Als u een container op de achtergrond wilt laten draaien (vrijstaand), kunt u dit doen met de parameter “-d”. De container wordt vervolgens in zijn eigen proces uitgevoerd en de controle over de console wordt teruggegeven aan de host.

Container identificatie

De container-ID is een unieke identificatie voor een Docker-container. Het kan worden bekeken met de opdracht docker ps en is doorgaans acht tekens lang. De eerste drie tekens van de container-ID zijn de ID van de afbeelding waarmee de container is gemaakt.

UTS-instellingen (–uts)

UTS-modus specificeert hoe een container zijn eigen identiteit moet beheren. Normaal gesproken krijgt elke container zijn eigen UID en GID. Deze modus is echter niet altijd zinvol, vooral niet als meerdere containers toegang hebben tot dezelfde container databank of toegang tot andere bronnen nodig hebben. In dit geval kunt u de UTS-modus uitschakelen, zodat alle containers dezelfde UID en GID hebben.

IPC-instellingen (–ipc)

Met de IPC-instelling (–ipc) kunt u een gemeenschappelijk gebied gebruiken voor communicatie tussen containers. Hierdoor hebben twee of meer containers toegang tot dezelfde bestanden en sockets. Als u geen IPC-instelling opgeeft, stelt Docker een standaardbereik voor communicatie in.

Netwerkinstellingen

Er zijn enkele nuttige parameters in Docker die u moet kennen. Eén van deze parameters is –net. Deze parameter bepaalt hoe het netwerk is geconfigureerd voor een specifieke toepassing.

–net=host – Met deze optie kan een container rechtstreeks toegang krijgen tot het netwerk van de host. Dit betekent dat de container toegang heeft tot alle netwerkdiensten (DNS, HTTP, etc.) geleverd door de host.

–net=bridge – Met deze optie wordt een interne netwerkbrugcontainer gemaakt waarmee de opgegeven container kan communiceren met andere containers en de host. Dit is de standaardoptie voor –net.

–net=container: – Met deze optie kan een container worden verbonden met een andere container die dezelfde netwerkoptie gebruikt. U kunt bijvoorbeeld twee containers met dezelfde –net=bridge-optie verbinden om ze met elkaar te verbinden.

–net=none – Deze optie schakelt netwerken voor een container uit. Een container die gebruik maakt van deze optie heeft geen toegang tot het netwerk en kan dus geen gebruik maken van netwerkdiensten.

Om twee containers met elkaar te laten communiceren, kunt u de opdracht docker network create gebruiken:

$ docker netwerk maak mijn netwerk aan

Met deze opdracht wordt een nieuw netwerk gemaakt met de naam my-network. Om een ​​container met dit netwerk te verbinden, kan men de opdracht docker run gebruiken met de optie –net:
$ docker run –net=mijn-netwerk…

Om een ​​container te verwijderen, kunt u het docker rm-commando gebruiken:

$ docker rm mijn-container

Met deze opdracht wordt de my-container container verwijderd. Om een ​​netwerk te verwijderen kun je het docker network rm commando gebruiken:
$ docker netwerk rm mijn-netwerk

Met deze opdracht wordt het netwerk met de naam my-network verwijderd.

Beleid opnieuw opstarten (–restart)

Het herstartbeleid van Docker specificeert hoe een container opnieuw wordt opgestart na een Fout moet opnieuw worden opgestart. De herstartopties zijn:

–restart=no: De container wordt niet opnieuw opgestart.
–restart=always: De container wordt altijd opnieuw opgestart, zelfs als deze netjes is gesloten.
–restart=on-failure: de container wordt opnieuw opgestart als deze wordt uitgevoerd met een Fout werd beëindigd.
–restart=unless-stopped: De container wordt altijd opnieuw opgestart, tenzij deze handmatig werd gestopt met de docker stop-opdracht.

Afsluitstatus

De afsluitstatus is een waarde die wordt geretourneerd door een opdracht of functie om aan te geven of de opdracht of functie met succes is voltooid.

Als een opdracht wordt voltooid met de afsluitstatus 0, betekent dit meestal dat de opdracht succesvol was. Een andere afsluitstatus betekent meestal dat de opdracht is mislukt.

Uitgangsstatussen kunnen ook worden gebruikt om specifieke foutcodes te genereren. Dit kan handig zijn als u een specifiek probleem heeft Fouten opsporen en oplossen wil. Afrit 1 kan bijvoorbeeld worden gebruikt om de foutmelding 'Bestand niet gevonden' weer te geven.

Opruimen (–rm)

De meeste Docker-opdrachten gebruiken een of meer parameters. Een van de belangrijkste is “–rm”. Deze opdracht zorgt ervoor dat alle tijdelijke objecten die door Docker zijn gemaakt, worden verwijderd nadat de opdracht is voltooid. Dit zorgt ervoor dat er geen ongewenste objecten in uw omgeving achterblijven.

Beveiligingsconfiguratie

Beveiligingsconfiguratie is een zeer belangrijk aspect bij het werken met Docker. In dit gedeelte worden enkele van de belangrijkste parameters voor de Veiligheid gepresenteerd door Docker.

Allereerst moet u zich er altijd van bewust zijn dat Docker Containers afgesloten zijn, maar niet geïsoleerd. Dit betekent dat als een aanvaller in één container terechtkomt, hij toegang heeft tot alle andere containers en het hostsysteem. Daarom is het erg belangrijk dat u uw containers goed configureert en beveiligt.

Een van de belangrijkste parameters voor Docker-beveiliging is “–cap-add”. Met deze parameter kunt u bepaalde kernelcapaciteiten aan de container doorgeven. Hiermee kunt u de toegang tot bepaalde functies van het hostsysteem controleren, waardoor de veiligheid wordt verhoogd. U kunt bijvoorbeeld “–cap-add=NET_RAW” gebruiken om ervoor te zorgen dat een container netwerkpakketten niet kan opsnuiven.

Een andere belangrijke parameter is “–security-opt”. Met deze parameter kunt u de toegang tot bepaalde functies van het hostsysteem beperken. U kunt bijvoorbeeld “–security-opt=apparmor:unconfined” gebruiken om ervoor te zorgen dat AppArmor niet op de container wordt toegepast. Dit geeft aanvallers een enorm voordeel omdat ze niet langer beperkt worden door AppArmor.

Een andere zeer belangrijke parameter is de SELinux “–label” parameter. Met deze parameter kunt u de toegang tot bepaalde functies van het hostsysteem beheren. Met bijvoorbeeld “–label=type:
container_runtime_t” ervoor te zorgen dat Docker SELinux niet op de container toepast. Dit geeft aanvallers een groot voordeel omdat ze niet langer beperkt worden door SELinux.

De laatste belangrijke parameter is “–bevoorrecht”. Met deze parameter krijgt u toegang tot alle functies van het hostsysteem. Dit is zeer gevaarlijk en mag alleen worden gebruikt als het absoluut noodzakelijk is.

Dat is het voor vandaag! We hopen dat dit artikel je heeft geholpen Basics Docker te begrijpen.

Geef een init-proces op

De Docker Daemon accepteert een opgegeven init-proces als argument. Dit proces is het eerste proces dat in de container wordt uitgevoerd. Als er geen init-proces is opgegeven, wordt het standaardinit-proces init gebruikt.

Het opgegeven init-proces moet ervoor zorgen dat er slechts één proces in de container wordt uitgevoerd. Wanneer er meerdere processen actief zijn, kunnen er onvoorspelbare fouten optreden. Het opgegeven init-proces moet er ook voor zorgen dat de container bij het verlaten correct wordt afgesloten.

Geef aangepaste cgroups op

Als u een aangepaste cgroup-geheugenlimiet voor uw toepassing wilt instellen, kunt u dit doen met de vlag –cgroup-memory. Als u de limiet bijvoorbeeld wilt instellen op 512 MB:

–cgroup-geheugen=”512m”

Hoe configureer ik een aangepast DNS server voor mijn containers?

Als u een aangepaste DNS hebt server, kunt u dit instellen in uw toepassingsspecificatiebestand of in de opdracht add voor de dcos marathon-app. Dit voorbeeld laat zien hoe u een DNS instelt server met behulp van het applicatiespecificatiebestand:

{ “id”: “/mijn-service”, “dns”: { “naamservers”: [ “10.0.0.1” ] } }

Dit voorbeeld laat zien hoe u een DNS instelt server met behulp van de dcos marathon-app add-opdracht:
$ dcos marathon-app toevoegen { “id”: “/mijn-service”, “dns”: { “naamservers”: [ “10.0.0.1” ] } }

Voor meer informatie over DNSZie DNS-instellingen in de Marathon-documentatie.

Hoe configureer ik een aangepast seaRCH domein voor mijn containers?

Als u een gewoonte heeft seaRCH domein, kunt u dit instellen in uw toepassingsspecificatiebestand of in de opdracht add voor de dcos marathon-app. Dit voorbeeld laat zien hoe u een search-domein met behulp van het applicatiespecificatiebestand:

{ “id”: “/mijn-service”, “dns”: {“search”: [ “.voorbeeld.com” ] } }

Dit voorbeeld laat zien hoe u een search-domein met behulp van de dcos marathon-app add command:$ dcos marathon app add { “id”: “/my-service”, “dns”: { “search”: [ “.voorbeeld.com” ] } }

Zie DNS-instellingen in de Marathon-documentatie voor meer informatie over DNS.

Hoe configureer ik een aangepast netwerk voor mijn containers?

Als u een aangepast netwerk heeft, kunt u dit instellen in uw toepassingsspecificatiebestand of in de opdracht dcos marathon app add. Dit voorbeeld laat zien hoe u een netwerk kunt instellen met behulp van het applicatiespecificatiebestand:

{ “id”: “/mijn-service”, “netwerken”: [ { “modus”: “container/bridge” } ] }

Dit voorbeeld laat zien hoe u een netwerk kunt instellen met de opdracht dcos marathon app add:
$ dcos marathon app add { “id”: “/my-service”, “networks”: [ { “mode”: “container/bridge” } ] }
Voor meer informatie over netwerken, zie Netwerken in de Marathon-documentatie.

Runtimebeperkingen voor resources

“Runtimebeperkingen voor bronnen” is een Docker-parameter die het resourcebeheer voor een actieve container regelt. Met deze parameter kunt u het CPU-gebruik, de geheugenvoetafdruk en het bestandssysteem voor een container beperken.

Beperkingen van het gebruikersgeheugen

De meeste Docker-parameters zijn bedoeld voor het beheer van het hoofdgeheugen. Dit wordt voornamelijk gebruikt voor het uitvoeren van containers en afbeeldingen. Er zijn ook enkele andere parameters voor netwerkconfiguratie en andere Middelen zijn verantwoordelijk.

Het hoofdgeheugen van Docker is zeer beperkt. Als u dus een container of afbeelding wilt maken, moet u deze parameters opgeven. Anders kunt u prestatieproblemen of fouten bij het downloaden van afbeeldingen ervaren.

Als u de opslagruimte van een container wilt vergroten, kunt u de volgende opdracht uitvoeren:

docker run -it –memory=”4g” ubuntu /bin/bash

Met deze opdracht wordt een nieuwe container gemaakt met 4 GB RAM. Als u meer geheugen nodig heeft, kunt u de waarde dienovereenkomstig verhogen.

U kunt ook de volgende opdracht uitvoeren om een ​​afbeelding met meer geheugen te maken:

docker build –memory=”4g” -t mijn_image .

Met deze opdracht wordt een nieuwe afbeelding gemaakt met 4 GB RAM. Als u meer geheugen nodig heeft, kunt u de waarde dienovereenkomstig verhogen.

Kernelgeheugenbeperkingen

De kernelgeheugenbeperkingen zijn een belangrijke parameter voor Docker. Ze bepalen hoeveel kernelgeheugen een container kan gebruiken. Als u de waarde van deze parameter niet opgeeft, wordt de standaardwaarde gebruikt.

Als je de waarde van de kernelgeheugenparameter wilt aanpassen, moet je eerst de huidige waarde vinden. Dit kan gedaan worden met behulp van de opdracht “docker info”. Vervolgens kunt u de gewenste nieuwe waarde opgeven.

Houd er rekening mee dat het wijzigen van deze parameter mogelijk het opnieuw opstarten van de container vereist.

Swapiness-beperking

De swappiness-instelling is een waarde tussen 0 en 100 die de frequentie bepaalt waarmee het systeem geheugeninhoud naar swapruimte schrijft. Een hoge swappiness-waarde betekent dat swappen vaker voorkomt en omgekeerd. De standaardwaarde is 60. Voor databases Een lagere swappiness wordt over het algemeen aanbevolen om ervoor te zorgen dat het geheugen zo lang mogelijk in het geheugen blijft.

CPU-aandeelbeperking

CPU-gebruiksaandeel is een constructie die is ingebouwd in de Linux-kernel en die Docker gebruikt om ervoor te zorgen dat een container niet meer dan het opgegeven aantal kernen gebruikt. Dit is belangrijk voor de isolatie tussen containers en de host, maar ook voor de betrouwbaarheid van het hele systeem.

CPU-beperking

Een CPUset-beperking stelt een limiet aan het aantal CPU's dat een container kan gebruiken. Dit is handig om ervoor te zorgen dat een container andere containers op het hostsysteem niet hindert.

CPU-quotumbeperking

CPU-quotumbeperking (cgroup_cpu_shares) is een Linux-kernelfunctie waarmee het CPU-gebruik tussen verschillende processen kan worden beperkt. Deze parameter kan in Docker worden opgegeven met behulp van de opdracht “–cpu-shares”.

Als u bijvoorbeeld de waarde 512 opgeeft, krijgt de container twee keer zoveel CPU-tijd als een container met een waarde van 256. Het opgeven van een hoge waarde betekent dus niet noodzakelijkerwijs dat de container meer CPU-tijd krijgt, maar alleen in verhouding tot andere containers met lagere waarden.

Blokkeer de beperking van de IO-bandbreedte (Blkio).

Blokkeer IO-bandbreedtebeperking is een hulpmiddel waarmee u de bandbreedte van de I/O-doorvoer voor een container kunt beperken. Dit is handig om ervoor te zorgen dat een container andere containers op de host niet overbelast. Block IO-bandbreedte wordt gemeten in bytes per seconde en kan worden ingesteld voor alle apparaten of voor een specifiek apparaat.

–blkio-gewicht

Het blkio-gewicht geeft aan hoeveel I/O-bandbreedte een container van het hele systeem ontvangt. Als u bijvoorbeeld een waarde van 100 opgeeft, ontvangt de container tweemaal de I/O-bandbreedte vergeleken met een andere container met de standaardwaarde van 50. Deze parameter is handig als u ervoor wilt zorgen dat een bepaalde container optimale prestaties behaalt.

Extra groepen

Als u meerdere services in één container wilt uitvoeren, kunt u extra groepen maken. Dit is handig als u bijvoorbeeld een webserver en een databaseserver in één container wilt laten draaien. Om een ​​extra groep te maken, voegt u de volgende opdracht toe aan de docker run-opdracht: –group-add .

Runtime-rechten en Linux-mogelijkheden

Het “runtime-privilege” is een Linux-kernfunctie waarmee bepaalde machtigingen tijdens runtime kunnen worden gewijzigd. Dit is met name handig wanneer een toepassing verschillende machtigingen vereist om te starten of uit te voeren.

U kunt deze functie gebruiken met de opdracht "sudo". Bijvoorbeeld: sudo chmod 777 /pad/naar/bestand. Met deze opdracht krijgen alle gebruikers volledige toegang tot het opgegeven bestand.
Er zijn echter enkele beperkingen met betrekking tot de sudo-functie. Gebruikers kunnen bijvoorbeeld geen machtigingen wijzigen die ze nog niet hebben. Dit is een veiligheidsmaatregel om te voorkomen dat gebruikers machtigingen aannemen die ze niet zouden moeten hebben.

Een ander nadeel van de sudo-functie is dat deze voor elke opdracht opnieuw moet worden uitgevoerd. Als een gebruiker vaak opdrachten met verschillende rechten moet uitvoeren, kan dit erg vervelend zijn.

Linux Capabilities is een uitbreiding van de Linux-kernel waarmee specifieke machtigingen kunnen worden ingesteld programma en toepassingen om toe te wijzen. Hierdoor kunnen gebruikers machtigingen instellen voor een programma of applicatie en deze machtigingen indien nodig wijzigen.

Veel flexibeler dan de sudo-functie, stelt Linux Capabilities gebruikers in staat de machtigingen voor een programma of applicatie te verfijnen. Een gebruiker met Linux-mogelijkheden kan bijvoorbeeld machtigingen instellen zodat een programma alleen toegang heeft tot bestanden die zijn gelezen. Dit is erg handig om ervoor te zorgen dat een programma geen wijzigingen aanbrengt in bestanden die het niet zou moeten doen.

Linux Capabilities is ook veel gebruiksvriendelijker dan de sudo-functie. Met Linux Capabilities hoeft u niet voor elke opdracht machtigingen in te stellen. U kunt eenvoudig een programma of applicatie installeren en vervolgens de machtigingen voor dat programma of die applicatie instellen.

Stuurprogramma's loggen (–log-stuurprogramma)

Wanneer u een Docker-image bouwt, kunt u opgeven welk logboekstuurprogramma u wilt gebruiken. Het standaard logboekstuurprogramma is “json-file”. Er zijn echter nog allerlei andere opties. Enkele voorbeelden zijn syslog, journald en vloeiend.

U kunt het logboekstuurprogramma opgeven met de parameter “–log-driver”. Als u bijvoorbeeld het syslog-logboekstuurprogramma wilt gebruiken, kunt u dit als volgt doen:

docker run –log-driver=syslog …

Deze parameter is erg handig als u de logboeken van uw containers in een gecentraliseerd logboekregistratiesysteem wilt opslaan.

Standaardwaarden voor Dockerfile-afbeeldingen overschrijven

Wanneer u een nieuwe Docker-installatiekopie maakt, kunt u de standaardinstellingen voor die afbeelding overschrijven. Dit is handig als u specifieke instellingen wilt wijzigen zonder de hele afbeelding opnieuw op te bouwen. U kunt bijvoorbeeld de standaardgebruikersnaam voor een nieuwe afbeelding wijzigen zonder de hele afbeelding opnieuw op te bouwen.

Om de standaardwaarden voor een nieuwe Docker-afbeelding te wijzigen, moet u eerst een bestand met de naam “.dockerignore” in uw projectmap maken. In dit bestand moet u alle mappen en bestanden opgeven die moeten worden genegeerd bij het maken van de afbeelding. Nadat u dit bestand heeft gemaakt, kunt u de volgende opdrachten uitvoeren om uw afbeelding te maken:

docker build -t uw_image_naam .
Met deze opdracht wordt een nieuwe Docker-afbeelding gemaakt met de naam “your_image_name” en worden alle standaard gedefinieerde waarden overschreven.

Conclusie

De beste Docker-parameters zijn grotendeels afhankelijk van uw behoeften. In dit artikel hebben we enkele van de belangrijkste parameters geïntroduceerd die relevant zijn voor de meeste gebruiksscenario's. Natuurlijk zijn er nog veel meer geweldige opties die niet in dit artikel worden genoemd. Neem de tijd om alle opties te onderzoeken en te zien welke het beste voor u werken!

een mededeling..is belangrijk!

Alle externe sites waarnaar op deze website wordt verwezen, zijn onafhankelijke bronnen. 
Deze links worden niet gesponsord en er is geen financiële bijdrage ontvangen voor de opname ervan. 
Alle informatie op deze website wordt verstrekt zonder garantie.
Deze site is een privéproject van Jan Domke en weerspiegelt uitsluitend persoonlijke meningen en ervaringen.

Jan Domke

Snelle ingenieur | Socialmediamanager | Hostingbeheerder | Webbeheerder

Sinds eind 2021 beheer ik het online magazine in eigen beheer SEO4Business en zo heb ik van mijn werk een hobby gemaakt.
Sinds 2019 ben ik werkzaam als Senior Hosting Manager, bij een van de grootste internet- en marketingbureaus in Duitsland en verbreed voortdurend mijn horizon.

Jan Domke