Docker Image Guide: Docker-kuvien poistaminen, konttien pysäyttäminen ja kaikkien osien poistaminen

Docker on yleisesti hyväksytty ja se on loistava ajoneuvo sovelluksen asentamiseen pilveen (tai johonkin muuhun Docker-valmiiseen infrastruktuuriin). Se on hyödyllinen myös paikalliseen kehitykseen. Voit käynnistää monimutkaiset sovellukset nopeasti, kehittyä erillään ja silti olla erittäin hyvä suorituskyky.

Tässä ovat tärkeimmät komennot, joiden avulla Dockeria voidaan käyttää päivittäisessä liiketoiminnassasi tehokkaasti.

Luettelo kaikista Docker-kuvista

docker images 

Minun tapauksessani minulla on 3 kuvaa asennettuna:

  • MySQL, versio 8.0.19, yksi merkitty uusimpana versiona
  • ja Cassandra uusimmalla versiolla.

Saadaksesi lisätietoja kuvasta, voit tarkastaa sen:

docker inspect mysql:latest

Tämä palauttaa luettelon tiedoista. Vaihtoehtoisesti voit käyttää tietoja myös kuvan tunnuksella:

docker inspect 3a5e53f63281

Tuotos voi olla ylivoimainen. Siksi on kätevä vaihtoehto suodattaa tietyt tiedot:

docker inspect --format='{{.RepoTags}} {{.Config.Image}}' 3a5e53f63281

Poista Docker Images

Yksittäinen kuva voidaan poistaa seuraavasti:

docker rm mysql:latest

Minun tapauksessani kuva on edelleen merkitty mysql: 8.0.19 . Siksi sen poistamiseksi kokonaan minun on poistettava myös toinen versiotagi:

docker rm mysql:8.0.19

Jos haluat poistaa kuvan suoraan, on helpompaa poistaa kuva kuvan tunnuksella:

docker image rm 3a5e53f63281 -f

Vaihtoehto -f pakottaa suorituksen, koska muuten saat virheilmoituksen, jos kuvaan viittaa useampi kuin yksi tunniste.

Käynnistä Docker Image

Kuva voidaan aloittaa etualalla seuraavasti:

docker run cassandra

Jos kuvaa ei ole, se ladataan. Voit lopettaa suorituksen painamalla CTRL + C . Voit suorittaa sen myös taustalla lisäämällä -d -vaihtoehdon:

docker run -d mysql

Jos säilö käynnistetään taustalla, saat säilötunnuksen.

Oletusarvon mukaan säilö toimii erillään. Siksi et voi kommunikoida sen kanssa, eikä nykyiseen hakemistoon ole tallennettu tiedostoja.

Välitä kontin portit eteenpäin

Voit lähettää portteja käyttämällä p vaihtoehto, esimerkiksi sivu, joka on esillä säilöstä:

docker run -p 8080:80 nginx

Tämä NGINX-säilö paljastaa verkkopalvelimen portissa 80. Käyttämällä -p 8080: 80, paikallinen portti 8080 välitetään edelleen konttiporttiin 80.

Kirjaudu konttiin

Joskus on hyödyllistä kirjautua konttiin. Tämä on mahdollista vain, jos säiliöön on asennettu kuori. Saat virheilmoituksen, jos näin ei ole.

Aloita ensin säiliö irrotettuna ja anna sille nimi:

docker run -d --name my_container nginx

Tämä palauttaa säilötunnuksen. Nyt voit suorittaa säiliön kuoren ja liittää siihen syötteen ja lähdön käyttämällä asetuksia -i ja -t :

docker exec -it my_container bash

Säilön nimen sijasta voit käyttää palautettua säilön tunnusta myös kaikissa seuraavissa toiminnoissa. Joskus bash ei ole käytettävissä. Siksi voit myös yrittää käynnistää peruskuoren:

docker exec -it my_container sh

Luettelo käynnissä olevista säilöistä

Kun olet aloittanut säilön, näet kaikkien käynnissä olevien säilöjen suorittavan:

docker ps

Liittämällä -a , poistuneet säilöt luetellaan myös:

docker ps -a

Jaa paikallinen kansio säilön kanssa

Sometimes it is useful to sync files between the container and the local filesystem. You can do it by running a container and using the -v option. On Linux and macOS, you can share a local temporary folder with a container by:

docker run --name=my_container -d -v $(pwd)/tmp:/var/log/nginx -p 8080:80 nginx

On windows you can run:

docker run --name=my_container -d -v %cd%/tmp:/var/log/nginx -p 8080:80 nginx

Stop running containers

It is possible to stop a running container by:

docker stop my_container

Stopping a container stops all processes but keeps changes within the filesystem.

Start a stopped container

A stopped container can be started by:

docker start my_container

Remove a container

To remove a stopped container, you can execute:

docker rm my_container

To stop and remove the container in one command, you can add the force option -f.

docker rm -f my_container

Create a volume and share it with multiple containers

An independent volume named SharedData can be created by:

docker volume create --name SharedData docker run --name=my_container -d -v SharedData:/var/log/nginx -p 8080:80 nginx docker run --name=my_container_2 -d -v SharedData:/var/log/nginx -p 8080:80 nginx

Both containers will have a shared folder, and files will be synced between both containers.

Remove a volume

To remove a volume, all containers that use the volume need to be removed.

docker rm -f my_container docker rm -f my_container_2 docker volume rm SharedData

Remove stopped containers and unused images

A safe tidy-up command is:

docker system prune -a

Remove all unused volumes

All unmounted volumes can be removed by:

docker volume prune

Conclusion

Creating containers, logging into containers, forwarding ports, and sharing volumes are the most important commands of your Docker command line interface. They build the foundation of systems like Kubernetes and enable us to create and run applications in isolation.

I hope you enjoyed the article. If you like it and feel the need for a round of applause, follow me on Twitter.

Olen Explore The World -nimisen vallankumouksellisen matka-alustamme perustaja. Olemme nuori startup-yritys, joka sijaitsee Dresdenissä, Saksassa ja kohdistamme ensin Saksan markkinoille. Ota yhteyttä minuun, jos sinulla on palautetta ja kysymyksiä mistä tahansa aiheesta.

Onnellinen Docker tutustumassa :)

Viitteet

  • Dockerin komentorivin ohjeet

    //docs.docker.com/engine/reference/commandline/docker/