Docker-containers gebruiken in Linux

In de vorige tutorial hebben we je laten zien: Hoe Docker te installeren. In deze tutorial zullen we de meest gebruikte Docker-commando's verkennen.

Docker-containers gebruiken in Linux - Linux

Meer informatie over Docker-opdrachten

Open een terminalemulator en typ:

Docker

Docker-containers gebruiken in Linux - Linux

Dit geeft u een snel overzicht van welke argumenten worden geaccepteerd door het Docker-commando en wat het doet. Scroll naar boven om ze allemaal te zien. Dat kun je merken Docker-cp "Kopieer bestanden/mappen tussen de container en het lokale bestandssysteem." Maar dit is niet genoeg informatie. Als je meer wilt weten over een bepaald subcommando, voeg dan gewoon toe --help Uiteindelijk. Voorbeeld:

docker cp --help

Een Docker-afbeelding zoeken en slepen

In het begin kunt u in de war raken tussen de afbeeldingen en de containers zelf. De afbeeldingen zijn de basis om de container te starten. Het kan dan op elke gewenste manier worden gewijzigd (de container). U kunt dus een afbeelding hebben zoals 'httpd' en 'website1' en 'website2' containers.

Om naar een afbeelding te zoeken, kunt u een opdracht gebruiken zoals:

docker search apache
Docker-containers gebruiken in Linux - Linux

U kunt ook zoeken in Docker-hub Als u liever uw eigen webbrowser gebruikt.

Om de afbeelding te kopiëren, hebt u het volgende nodig:

docker pull httpd

Uiteraard wil je "httpd" vervangen door de naam van de afbeelding die je nodig hebt.

Docker Container in- en uitschakelen

Om een ​​container buiten deze afbeelding te maken en uit te voeren, typt u:

docker run -d --name=http-server --publish 80:80 httpd
  • -d De container draait op de achtergrond, gescheiden van de resultaten.
  • -naam Geeft aan hoe u uw container een naam wilt geven.
  • –publiceer hostPort:containerPort U publiceert de poort in de container naar uw hostsysteem. Apache doet verzoeken op poort 80, maar alleen in de container (geïsoleerd). Met de hierboven gebruikte opdrachtparameter worden verzoeken naar poort 80 op het hostsysteem doorgestuurd naar poort 80 in de container, waardoor u in wezen een pad krijgt om in de container te komen. Dit betekent dat als u nu een browser op het hostsysteem opent en "localhost" typt in de adresbalk, u bij de webserver komt die in de container draait.
Docker-containers gebruiken in Linux - Linux

Om de containers te bekijken die momenteel worden uitgevoerd:

docker ps

Om containers te bekijken die momenteel zijn uitgeschakeld:

docker ps -a

Typ . om de container uit te schakelen docker stop naam-van-container. Bijvoorbeeld:

docker stop http-server

Wanneer u de container opnieuw wilt starten:

docker start http-server

En als u nog een container van de Apache-afbeelding wilt maken:

docker run -d --name=http-server2 --publish 8080:80 httpd

Merk op dat deze keer poort 8080 werd gebruikt in plaats van 80. Dit conflicteert niet met de andere container. Om hier toegang toe te krijgen, kunt u localhost:8080 in uw webbrowser invoeren.

Docker-container aanpassen

Vaak moet u de bestanden naar uw container kopiëren. Voor het kopiëren van het hostsysteem naar de container is de syntaxis voor de opdracht: docker cp /pad/naar/local/bestand/of/mapnaam-van-container:/pad/naar/container/map/of/bestand.

Bijvoorbeeld

docker cp /bin/ls http-server:/tmp

Gebruik . om van de container naar de host te kopiëren docker cp naam-van-container:/pad/naar/container/bestand/of/map /pad/naar/local/bestand/of/map.

docker cp http-server:/etc /tmp

Soms moet je ook in containers "stappen" door er een schaal in te openen. Op deze manier kunt u de bestanden wijzigen, extra binaire bestanden installeren en ze aanpassen aan uw behoeften.

docker exec -it http-server /bin/bash
Docker-containers gebruiken in Linux - Linux

Nu kunt u bijvoorbeeld "index.html" bewerken en er een startpagina van een website in maken.

Om de schaal in de container te verlaten:

exit

Docker-containers en afbeeldingen verwijderen

Voordat u een container verwijdert, moet deze eerst worden gestopt:

docker stop http-server2

Nu kunt u de container verwijderen met:

docker rm http-server2

Maar het zijn eigenlijk afbeeldingen die meestal meer schijfruimte in beslag nemen dan containers. U kunt ze verwijderen met:

docker rmi httpd
Docker-containers gebruiken in Linux - Linux

Dit werkt niet totdat u stopt en alle containers verwijdert die afhankelijk zijn van die afbeelding.

Conclusie

Docker is uitgegroeid tot een complex project. Maar u kunt langzaam door elke opdracht navigeren door de zelfstudiepagina's te raadplegen. Bijvoorbeeld: uw Docker-stuurprogramma laat u alles zien over de parameters van het docker-run-commando, zoals hoe u het voorkeurs-IP-adres voor elke container instelt of hoe u het geheugengebruik beperkt. Langzaam maar zeker kun je elk Docker-commando onder de knie krijgen door de zelfstudiepagina's te lezen.

Ga naar de bovenste knop