Montowanie folderów (lub systemów plików) oznacza łączenie lub podłączanie systemu plików (folderu lub katalogu) do określonej lokalizacji w innym systemie plików. Pozwala to na udostępnienie zawartości jednego folderu w innym folderze lub nawet w innej lokalizacji w systemie.
Montowanie folderów jest ważną funkcją systemów operacyjnych i jest często używane w kontekście konteneryzacji, takiej jak Docker lub wirtualizacji, aby umożliwić dostęp do plików i danych między maszyną hosta a kontenerami lub maszynami wirtualnymi.
Podstawową ideą montowania folderów jest podzielenie obszaru fizycznej pamięci masowej (takiej jak dysk lub system plików) na różne obszary logiczne w celu organizacji i dostępu do plików. Pozwala to kontrolować i modyfikować zawartość systemu plików bez wpływu na inne systemy plików lub katalogi.
Montowanie folderów jest często używane do wymiany danych między maszyną hosta a kontenerami, aktualizacji kodu podczas tworzenia aplikacji, przechowywania baz danych lub dostosowywania plików konfiguracyjnych.
Montowanie folderów w Docker Compose umożliwia wymianę danych między maszyną hosta a kontenerami, co zapewnia kilka korzyści i możliwości:
W Docker Compose można montować foldery maszyny hosta w kontenerach za pomocą opcji `volumes`
. Oto przykład użycia woluminów
w pliku docker-compose.yml
:
yaml
version: '3'
services:
app:
image: nginx
volumes:
- /path_to_host_folder:/path_to_folder_volume
W powyższym przykładzie"/path_to_host_folder
" to ścieżka do folderu na komputerze hosta, który chcesz zamontować w kontenerze. `/path_to_folder_volume`
to ścieżka do folderu wewnątrz kontenera, w którym chcesz zamontować folder hosta.
Można również użyć ścieżek względnych zamiast bezwzględnych, określając ścieżkę względem lokalizacji pliku `docker-compose.yml`
. W tym przypadku należy użyć `./`
, aby określić bieżący katalog.
yaml
version: '3'
services:
app:
image: nginx
volumes:
- ./host's_folder:/path_to_folder_volume
Można również określić wiele zamontowanych folderów, po prostu dodając je do listy `volumes`
.
yaml
version: '3'
services:
app:
image: nginx
volumes: