61 lines
2.4 KiB
Markdown
61 lines
2.4 KiB
Markdown
---
|
|
status: stable
|
|
type: concept
|
|
tags:
|
|
- devops
|
|
- containerization
|
|
- docker
|
|
created: 2025-12-17
|
|
updated: 2026-05-07
|
|
aliases:
|
|
- Storage Drivers - Docker
|
|
---
|
|
# Storage Drivers - Docker
|
|
|
|
Для работы с данными в контейнере имеется специальный контейнерный слой (**container layer**). Он появляется только в момент запуска контейнера, для работы с данными.
|
|
|
|

|
|
|
|
Для работы с данными в контейнерном слое и работы со слоями образа _docker_ задействует _**драйверы хранилища**_ **(storage drivers).**
|
|
|
|
Доступны в Docker 6 SD:
|
|
|
|

|
|
|
|
## Block Level (блочные хранилища)
|
|
|
|
- распределяют данные на блоки одинакового размеры по оборудованию
|
|
- не зависит от пути к данным
|
|
- быстрое получение
|
|
|
|
Примеры: ZFS, DeviceMapper
|
|
|
|
## File Level (файловые хранилища)
|
|
|
|
- данные хранятся единым фрагментов
|
|
- присутсвует иерархия директорий
|
|
- доступ к файлу зависит от единственного пути
|
|
- наиболее распространенный способ хранения данных
|
|
|
|
Примеры: AUFS, Overlay, **Overlay2** (по умолчанию)
|
|
|
|
## Object Level (объектно-ориентированные хранилища)
|
|
|
|
- данные распределяются по оборудованию по частям
|
|
- связывает объекты данных с их метадатой
|
|
- объекты могут быть только перезаписаны (изменять нельзя)
|
|
- для доступа требуется реализация API интерфейса
|
|
|
|
По умолчанию, в Docker используется Overlay2, изменить это можно в `/etc/docker/daemon.json`
|
|
|
|
**Backing Filesystem**
|
|
|
|
Резервная файловая система, в которой расположен `/var/lib/docker`
|
|
|
|
Для работы storage driver требуется **совместимая** backing filesystem.
|
|
|
|

|
|
|
|
## Связанные заметки
|
|
- [[Основы - Docker]]
|