Π ΡΠ»ΡΡΠ°Π΅ Docker Π΄Π°Π½Π½ΡΠ΅ Π±ΡΠ΄ΡΡ Ρ ΡΠ°Π½ΠΈΡΡΡΡ Π²Π½ΡΡΡΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ°.
Π ΠΊΠΎΠ³Π΄Π° ΠΌΡ ΡΠ΄Π°Π»ΠΈΠΌ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ, Π²ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π±ΡΠ΄ΡΡ ΠΏΠΎΡΠ΅ΡΡΠ½Ρ.
Π ΡΡΠΎΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π΅ ΠΌΡ ΡΠ·Π½Π°Π΅ΠΌ, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠΎΠΌΠ° Docker, ΠΊΠ°ΠΊ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°ΡΡ ΠΈΡ ΠΊ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ°ΠΌ ΠΈ ΠΊΠ°ΠΊ ΠΎΠ΄ΠΈΠ½ ΠΈ ΡΠΎΡ ΠΆΠ΅ ΡΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ Π² Π΄Π²ΡΡ ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ°Ρ .
ΠΠΎΡΠ΅ΠΌΡ Π½Π°ΠΌ Π½ΡΠΆΠ½Ρ ΡΠΎΠΌΠ° Π΄Π»Ρ Docker?
- ΠΡΠΈ ΡΠ΄Π°Π»Π΅Π½ΠΈΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΎΠ² ΡΠΎΠΌΠ° Π½Π΅ Π±ΡΠ΄ΡΡ ΡΠ΄Π°Π»Π΅Π½Ρ.
- ΠΡΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΡΠΉΡΠ΅ ΠΈΠ»ΠΈ ΠΎΡΡΠΎΠ΅Π΄ΠΈΠ½ΡΠΉΡΠ΅ ΡΠΎΠΌΠ° ΠΊ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ°ΠΌ.
- ΠΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠ°Π·Π΄Π΅Π»ΠΈΡΡ ΡΠΎΠΌΠ° (Ρ
ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ / Π΄Π°Π½Π½ΡΠ΅) ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ°ΠΌΠΈ.
- ΠΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΡΠ΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΎΠ² ΠΎΡ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ°.
- ΠΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π₯ΡΠ°Π½ΠΈΡΡ ΡΠΎΠΌ Π½Π° ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌ Ρ ΠΎΡΡΠ΅ ΠΈΠ»ΠΈ Π² ΠΎΠ±Π»Π°ΠΊΠ΅.
ΠΠ°ΡΠ°Π»ΠΎ ΡΠ°Π±ΠΎΡΡ Ρ ΡΠΎΠΌΠ°ΠΌΠΈ Docker
# docker volume
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠΎΠΌΠΎΠ² Docker
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠΎΠΌΠ° Docker:
docker volume create <volume_name>
# docker volume create devops_volume
Π‘ΠΏΠΈΡΠΎΠΊ Docker ΡΠΎΠΌΠΎΠ²
Π§ΡΠΎΠ±Ρ ΠΏΠΎΠΊΠ°Π·Π°ΡΡ ΡΠΏΠΈΡΠΎΠΊ Π²ΡΠ΅Ρ ΡΠΎΠ·Π΄Π°Π½Π½ΡΡ ΡΠΎΠΌΠΎΠ² Docker, Π·Π°ΠΏΡΡΡΠΈΡΠ΅:
# docker volume ls
ΠΡΠΎΠ²Π΅ΡΠΊΠ° ΡΠΎΠΌΠΎΠ² Docker
ΠΠΎΠΌΠ°Π½Π΄Π° docker volume inspect ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡ Π²Π°ΠΌ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΡΠΎΠΌΠ°, ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ, ΠΈΠΌΠ΅Π½ΠΈ ΠΈ ΠΎΠ±Π»Π°ΡΡΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ.
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
docker volume inspect <volume_name>
# 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
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Π΄Π»Ρ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΡΠΎΠΌΠ°:
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
ΠΠΈΠ΄ΠΈΡΠ΅?
ΠΡ ΡΠ΄Π°Π»ΠΈΠ»ΠΈ Π²ΡΠ΅ ΡΠΎΠΌΠ° Π·Π° ΠΎΠ΄ΠΈΠ½ ΡΠ°Π·.