Докер

Томи Docker, кріплення та багато іншого

Томи Docker, кріплення та багато іншого
У Docker щоразу, коли ви створюєте контейнер, є вказане місце, де будуть зберігатися дані для контейнера. Якщо ви не вказали жодного місця для зберігання цих даних, вони будуть зберігатися в контейнері. Коли ви видалите контейнер, дані також будуть втрачені. Однак, працюючи над корпоративними проектами, щоб запобігти втраті даних, ви можете видалити контейнер, але зберегти дані. Ви можете використовувати ці дані, щоб створити більше контейнерів і обмінюватися даними між цими контейнерами. Тут в гру входить обсяг Docker.

Особливості томів Docker

У цьому посібнику ми пояснимо, що таке том Docker і як ним користуватися, а також як змонтувати том у Docker.

Вимоги

Основний синтаксис тому Docker

Ви можете використовувати команду “docker volume”, щоб переглянути всі доступні опції з гучністю:

обсяг докера

Ви повинні побачити наступний результат після введення вищевказаної команди:

Використання: об'єм докера КОМАНДА
Управління обсягами
Команди:
create Створити том
перевірити Відображення детальної інформації про один або кілька томів
ls Список томів
чорнослив Видалити всі невикористані локальні томи
rm Видаліть один або кілька томів
Запустіть 'docker volume COMMAND --help' для отримання додаткової інформації про команду.

Створіть том

Щоб створити том даних, спочатку потрібно створити обсяг даних на хості Docker і приєднати том до контейнера.

Ви можете створити том Docker за допомогою команди “docker volume create.”Наприклад, використовуйте таку команду, щоб створити новий том Docker з назвою myvolume:

докер том створити

Ви повинні побачити такий результат:

мій том

Ви можете вказати існуючий том за допомогою такої команди:

об'єм докера лс

Ви повинні побачити такий результат:

НАЗВА ОБ'ЄМУ ВОДІЯ
локальний c2d2815ba1a75fbfe5d0a4b69d94269e55ccbc138c7d2e19504e501f1dbe634f
місцевий мікс

Якщо ви хочете побачити більше інформації про том, виконайте таку команду:

докер перевірити

Ви повинні отримати наступний результат після запуску наведеної вище команди:

[

"CreatedAt": "2020-09-12T04: 51: 31Z",
"Водій": "місцевий",
"Мітки": ,
"Mountpoint": "/ var / lib / docker / volumes / myvolume / _data",
"Назва": "мій обсяг",
"Параметри": ,
"Scope": "місцевий"

]

Змонтувати том

На даний момент у вас є один том із назвою myvolume. У цьому прикладі ви створите контейнер і змонтуєте мій обсяг до контейнера.

Ви можете скористатися опцією -mount для встановлення гучності. Основний синтаксис для монтажу тому в контейнер показаний нижче:

docker run --mount source = volume-name, destination = path-inside-container docker-images

Наприклад, щоб створити контейнер Ubuntu і підключити myvolume до контейнера, виконайте таку команду:

docker run -it --name = volumecontainer --mount source = myvolume, destination = / data ubuntu

Ця команда витягне образ Ubuntu з Docker Hub, запустить контейнер в інтерактивному режимі з ім'ям volumecontainer і змонтує контейнер myvolume до / data всередині каталогу / data:

Не вдається локально знайти зображення 'ubuntu: latest'
остання: Витягування з бібліотеки / ubuntu
54ee1f796a1e: Потягніть завершено
f7bfea53ad12: Потягніть завершено
46d371e02073: Витягніть завершено
b66c17bbf772: Потягніть завершено
Дайджест: sha256: 31dfb10d52ce76c5ca0aa19d10b3e6424b830729e32a89a7c6eee2cda2be67a5
Статус: Завантажено нове зображення для ubuntu: останнє
root @ 06a477c4e444: / #

Ви можете перевірити змонтований том наступною командою:

[захищено електронною поштою]: / # ls

Ви повинні побачити каталог даних у наступному висновку:

bin завантаження даних dev і т.д. home lib lib32 lib64 libx32 media mnt
opt proc кореневий запуск sbin srv sys tmp usr var

Тепер ми створимо зразок файлу з іменем файл.txt всередині / каталог даних наступною командою:

echo "Це тестовий файл!"> / дані / файл.txt

Вихід із контейнера за допомогою такої команди:

вихід

Знову запустіть той самий контейнер за допомогою такої команди:

контейнер докера запуску

Далі приєднайте запущений контейнер наступною командою:

docker exec -it volumecontainer / bin / bash

Перевірте, чи ваш файл.txt зберігає наступне:

дані про кішку / файл.txt

Ви повинні отримати наступний результат після введення вищевказаної команди:

Це тестовий файл!

Обмін даними між контейнерами

Ви також можете обмінюватися даними між кількома контейнерами, використовуючи том Docker.

Як ви знаєте, ми створили том з іменем myvolume, новий контейнер з назвою volumecontainer, використовуючи цей том. Ми також створили файл з іменем файл.txt всередині тома.

Тепер ми створимо ще один контейнер з назвою volumecontainer1 з тим самим обсягом myvolume, використовуючи таку команду:

docker run -it --name = volumecontainer1 --mount source = myvolume, destination = / data ubuntu

Запустіть команду ls, як показано нижче:

ls

Ви повинні побачити каталог даних у наступному висновку:

bin boot data dev і т.д. home lib lib32 lib64 libx32
медіа mnt opt ​​proc кореневий запуск sbin srv sys tmp usr var

Виконайте наступну команду перевірки файлу.txt:

cat / дані / файл.txt

Ви повинні побачити той самий вміст, який ви створили в попередньому контейнері:

Це тестовий файл!

Підключити каталог як том

Ви можете використовувати каталог, що знаходиться у вашій хост-системі Docker, як том і підключити його до контейнера. Ви також можете використовувати параметр -v, щоб досягти того ж, як показано нижче:

docker запустити -v "ім'я_каталогу": ім'я_тома docker_image

Створіть каталог з іменем / дані всередині хосту Docker за допомогою такої команди:

mkdir / Дані

Далі створіть деякі файли всередині каталогу / Data:

cd / дані
сенсорний файл1.txt-файл2.txt-файл3.txt

Створіть новий контейнер, використовуючи каталог / Дані як том із такою командою:

docker запустити -it --name = data1 -v / Data: / Data ubuntu

Ця команда створить новий контейнер і змонтує том з іменем / даними.

Виконайте таку команду, щоб перевірити вміст каталогу / Data:

ls -l / Дані /

Ви повинні побачити всі створені нами раніше файли в хост-системі, як показано нижче:

всього 0
-rw-r - r-- 1 кореневий корінь 0 12 вересня 05:41 файл1.txt
-rw-r - r-- 1 кореневий корінь 0 12 вересня 05:41 файл2.txt
-rw-r - r-- 1 кореневий корінь 0 12 вересня 05:41 файл3.txt

Видаліть том Docker

Ви можете легко видалити або видалити том, використовуючи такий синтаксис:

том докера rm том-назва -

Наприклад, щоб видалити том з іменем myvolume, виконайте таку команду:

обсяг докера rm myvolume - -

Ви повинні отримати таку помилку:

Відповідь помилки від демона: видалити myvolume:
використовується обсяг - [06a477c4e4444c0f815a1ec4a151a8
339bf53d5060c492af867bcaebe531dd5d, fd8d05a027a755f
1df004ccf62568b5d66989c2112115c8a652ddbc8eb960948]

Це тому, що ваш обсяг використовується контейнером. Отже, вам потрібно буде зупинитись і вийняти контейнер перед тим, як видалити обсяг.

Щоб зупинити та видалити контейнер, виконайте таку команду:

docker контейнер зупинка volumecontainer volumecontainer1
контейнер докера rm volumecontainer volumecontainer1

Тепер ви можете легко видалити гучність.

Висновок

У наведеному вище посібнику ви дізналися, що таке том Docker, як його створити та як встановити його всередині контейнера. Ви також дізналися, як обмінюватися даними між кількома контейнерами, використовуючи том.

Як використовувати GameConqueror Cheat Engine в Linux
Стаття висвітлює посібник із використання механізму читів GameConqueror в Linux. Багато користувачів, які грають у ігри в Windows, часто використовуют...
Кращі емулятори ігрової консолі для Linux
У цій статті буде перелічено популярне програмне забезпечення для емуляції ігрової консолі, доступне для Linux. Емуляція - це рівень сумісності програ...
Best Linux Distros for Gaming in 2021
The Linux operating system has come a long way from its original, simple, server-based look. This OS has immensely improved in recent years and has no...