🐳 ОбъяснСниС Ρ‚ΠΎΠΌΠΎΠ² Docker с ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ

by itisgood

Π’ случаС Docker Π΄Π°Π½Π½Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒΡΡ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°.

И ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ ΡƒΠ΄Π°Π»ΠΈΠΌ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€, всС Π΄Π°Π½Π½Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ потСряны.

Π’ этом руководствС ΠΌΡ‹ ΡƒΠ·Π½Π°Π΅ΠΌ, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Ρ‚ΠΎΠΌΠ° Docker, ΠΊΠ°ΠΊ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ ΠΈΡ… ΠΊ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°ΠΌ ΠΈ ΠΊΠ°ΠΊ ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ Ρ‚ΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для хранСния Π΄Π°Π½Π½Ρ‹Ρ… Π² Π΄Π²ΡƒΡ… ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°Ρ….

Если Π²Ρ‹ Π΅Ρ‰Π΅ Π½Π΅ Π·Π½Π°Π΅Ρ‚Π΅ основ Docker, ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ΡΡŒ ΠΊ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌΡƒ руководству:

ΠŸΠΎΡ‡Π΅ΠΌΡƒ Π½Π°ΠΌ Π½ΡƒΠΆΠ½Ρ‹ Ρ‚ΠΎΠΌΠ° для Docker?

  • ΠŸΡ€ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ² Ρ‚ΠΎΠΌΠ° Π½Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΡƒΠ΄Π°Π»Π΅Π½Ρ‹.
  • ΠŸΡ€ΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΡΠΉΡ‚Π΅ ΠΈΠ»ΠΈ отсоСдиняйтС Ρ‚ΠΎΠΌΠ° ΠΊ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°ΠΌ.
  • ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ Ρ‚ΠΎΠΌΠ° (Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ / Π΄Π°Π½Π½Ρ‹Π΅) ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°ΠΌΠΈ.
  • ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ ΠΎΡ‚Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ² ΠΎΡ‚ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡˆΠ°.
  • ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ Π₯Ρ€Π°Π½ΠΈΡ‚ΡŒ Ρ‚ΠΎΠΌ Π½Π° ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌ хостС ΠΈΠ»ΠΈ Π² ΠΎΠ±Π»Π°ΠΊΠ΅.
ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΠΌΠ΅Ρ‚ΡŒ логичСскоС Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ…, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€.
ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Ссли ΠΌΡ‹ ΡƒΠ΄Π°Π»ΠΈΠΌ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€, Ρ‚ΠΎ ΠΈ наши Π΄Π°Π½Π½Ρ‹Π΅ всС Ρ€Π°Π²Π½ΠΎ Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° хостС.
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, послС уничтоТСния ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡ€ΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ ΠΎΡ‚ΠΎΠΌ ΠΊ Π»ΡŽΠ±Ρ‹ΠΌ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°ΠΌ, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΊ Π½ΠΎΠ²Ρ‹ΠΌ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°ΠΌ.

Начало Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ‚ΠΎΠΌΠ°ΠΌΠΈ Docker

Команда docker volume ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ… volume, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ‚ΠΎΠΌ, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ Ρ‚ΠΎΠΌΠ°, ΠΏΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ доступныС Ρ‚ΠΎΠΌΠ° ΠΈ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΈΡ….
# docker volume

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Ρ‚ΠΎΠΌΠΎΠ² Docker

Бинтаксис для создания Ρ‚ΠΎΠΌΠ° Docker:

docker volume create <volume_name>
ΠŸΡ€ΠΈΠΌΠ΅Ρ€:
# docker volume create devops_volume
ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Π°Ρ Π²Ρ‹ΡˆΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π° создаст Ρ‚ΠΎΠΌ Docker с ΠΈΠΌΠ΅Π½Π΅ΠΌ devops_volume.

Бписок Docker Ρ‚ΠΎΠΌΠΎΠ²

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ список всСх созданных Ρ‚ΠΎΠΌΠΎΠ² Docker, запуститС:

# docker volume ls

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Ρ‚ΠΎΠΌΠΎΠ² Docker

Команда docker volume inspect прСдоставит Π²Π°ΠΌ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ создании Ρ‚ΠΎΠΌΠ°, располоТСнии, ΠΈΠΌΠ΅Π½ΠΈ ΠΈ области дСйствия.

Бинтаксис:

docker volume inspect <volume_name>
ΠŸΠΎΠ·Π²ΠΎΠ»ΡŒΡ‚Π΅ ΠΌΠ½Π΅ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ Π²Π°ΠΌ Π΄Π΅Ρ‚Π°Π»ΠΈ Ρ‚ΠΎΠΌΠ° Docker с ΠΈΠΌΠ΅Π½Π΅ΠΌ devops_volume.
# docker volume inspect devops_volume

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ² с ΠΏΡ€ΠΈΠΊΡ€Π΅ΠΏΠ»Π΅Π½Π½Ρ‹ΠΌ ΠΊ Π½ΠΈΠΌ Ρ‚ΠΎΠΌΠΎΠΌ

Бинтаксис:

docker container create --name <container_name> -it --mount source<volume_name>,target=/<folder_Name> <image_name>

ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

# docker container create --name myBusyBox1 -it --mount source=devops_volume,target=/app busybox
Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, Π±Ρ‹Π» Π»ΠΈ создан ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ docker ps -a:

Π£Π΄Π°Π»ΠΈΡ‚ΡŒ Ρ‚ΠΎΠΌΠ° Docker

Бинтаксис для удалСния Ρ‚ΠΎΠΌΠ°:

docker volume rm <volume_name>

Π”Π°Π²Π°ΠΉΡ‚Π΅ ΡƒΠ΄Π°Π»ΠΈΠΌ Ρ‚ΠΎΠΌ с ΠΈΠΌΠ΅Π½Π΅ΠΌ devops_volume.

# docker volume rm devops_volume

На снимкС экрана ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ пытаСмся ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ Ρ‚ΠΎΠΌ, Π½ΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ Π΅Π³ΠΎ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Ρ‚ΠΎΠΌ ΡƒΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ.

Π˜Ρ‚Π°ΠΊ, Π²ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡƒΠ±ΠΈΡ‚ΡŒ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ ΠΈ ΠΎΡΠ²ΠΎΠ±ΠΎΠ΄ΠΈΡ‚ΡŒ Ρ‚ΠΎΠΌ.

И Ρ‚ΠΎΠ³Π΄Π° ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ Π΅Π³ΠΎ.

Для этого сначала ΡƒΠ΄Π°Π»ΠΈΡ‚Π΅ всС Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:

# docker rm –f $(docker ps -aq)

А Π·Π°Ρ‚Π΅ΠΌ ΡƒΠ΄Π°Π»ΠΈΡ‚Π΅ Ρ‚ΠΎΠΌ:

# docker volume rm devops_volume

Π£Π΄Π°Π»ΠΈΡ‚ΡŒ всС Ρ‚ΠΎΠΌΠ° ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ docker rm, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ ΠΎΠ΄ΠΈΠ½ Ρ‚ΠΎΠΌ Π·Π° Ρ€Π°Π·.

Если Ρƒ нас Π΅ΡΡ‚ΡŒ нСсколько Ρ‚ΠΎΠΌΠΎΠ² ΠΈ ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ всС Ρ‚ΠΎΠΌΠ°, ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ prune.

Π”Π°Π²Π°ΠΉΡ‚Π΅ создадим нСсколько Ρ‚ΠΎΠΌΠΎΠ²:

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΡƒΠ΄Π°Π»ΠΈΡ‚Π΅ всС Ρ‚ΠΎΠΌΠ° Docker ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:

# docker volume prune

Π’ΠΈΠ΄ΠΈΡ‚Π΅?

ΠœΡ‹ ΡƒΠ΄Π°Π»ΠΈΠ»ΠΈ всС Ρ‚ΠΎΠΌΠ° Π·Π° ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·.

 

 

You may also like

Leave a Comment