Монтування папок (або файлових систем) означає зв'язування або під'єднання файлової системи (папки або директорії) з певним місцем в іншій файловій системі. Це дає змогу зробити вміст однієї папки доступним усередині іншої папки або навіть в іншому місці в системі.
Монтування папок є важливою функцією операційних систем і часто використовується в контексті контейнеризації, як-от Docker, або віртуалізації, щоб забезпечити доступ до файлів і даних між хост-машиною та контейнерами або віртуальними машинами.
Основна ідея монтування папок полягає в тому, щоб розділити область фізичного зберігання (наприклад, диска або файлової системи) на різні логічні області для організації та доступу до файлів. Це дає змогу контролювати і змінювати вміст файлової системи, не зачіпаючи інші файлові системи або директорії.
Монтування папок часто використовується для обміну даними між хост-машиною і контейнерами, оновлення коду під час розроблення застосунків, зберігання баз даних або налаштування конфігураційних файлів.
Монтування папок у Docker Compose дає змогу обмінюватися даними між хост-машиною та контейнерами, що надає кілька переваг і можливостей:
У Docker Compose ви можете монтувати папки хост машини в контейнери за допомогою опції `volumes`
. Ось приклад використання volumes
у файлі docker-compose.yml:
yaml
version: '3'
services:
app:
image: nginx
volumes:
- /path_to_host_folder:/path_to_folder_volume
У наведеному прикладі"/path_to_host_folder
" - це шлях до папки на вашій хостовій машині, яку ви хочете монтувати в контейнері. `/path_to_folder_volume`
- це шлях до папки всередині контейнера, куди ви хочете монтувати папку хоста.
Також ви можете використовувати відносні шляхи замість абсолютних, вказуючи шлях щодо місця розташування файлу `docker-compose.yml`
. У цьому випадку, використовуйте `./`
для вказівки поточної директорії.
yaml
version: '3'
services:
app:
image: nginx
volumes:
- ./host's_folder:/path_to_folder_volume
Ви також можете вказувати кілька монтованих папок, просто додаючи їх до списку `volumes`
.
yaml
version: '3'
services:
app:
image: nginx
volumes: