Шпаргалка: команды и паттерны
Вещи, которые повторяются буквально в каждой статье сайта — вместо того чтобы искать их заново в конкретном гайде. Обновляется по мере появления новых статей.
Структура каталогов на NAS
Паттерн, который используется во всех статьях сайта без исключений — один каталог на сервис в /volume1/docker/, с чётким разделением конфигурации, данных и (при необходимости) бэкапов внутри:
/volume1/docker/<имя-сервиса>/ ├── data/ # то, что действительно нужно бэкапить ├── config/ # конфигурация приложения └── backups/ # локальные архивы (опционально)
Подробнее — в разделах подготовки каталогов в статьях про Vaultwarden, Nextcloud и Immich.
Основные команды Docker Compose
docker compose up -d # запустить стек в фоне docker compose down # остановить и удалить контейнеры (тома остаются) docker compose logs -f <service> # логи конкретного сервиса в реальном времени docker compose pull <service> # подтянуть новый образ docker compose exec <service> sh # зайти внутрь контейнера docker exec -it <container> bash # то же самое, но по имени контейнера напрямую
Снимок состояния стека без веб-интерфейса
docker stats --no-stream --format \
"table {{.Name}}\t{{.CPUPerc}}\t{{.MemUsage}}"
Подробный разбор мониторинга и Dozzle — в статье про сетевой high-load.
Сетевые режимы: когда какой
| Режим | Когда использовать | Пример из статей |
|---|---|---|
| bridge (по умолчанию) | простой сервис, один порт наружу | большинство контейнеров сайта |
| macvlan | нужен собственный IP в локальной сети | high-load, AdGuard Home |
| host | нужно автообнаружение устройств (mDNS/SSDP) или доступ к сетевому стеку хоста | Home Assistant, fail2ban |
Частые переменные окружения
| Переменная | Смысл |
|---|---|
| TZ | часовой пояс контейнера, влияет на метки времени в логах и расписаниях |
| PUID / PGID | под каким системным пользователем/группой контейнер пишет файлы на том |
| LOG_LEVEL | уровень детализации логов — полезно временно повышать при отладке |
Скелет бэкап-скрипта
Один и тот же каркас — снять дамп/архив, положить с меткой времени, вычистить старое — повторяется в статьях про Vaultwarden, Nextcloud, Home Assistant и Immich:
#!/bin/bash STAMP=$(date +%Y%m%d-%H%M) DEST=/volume1/docker/<сервис>/backups mkdir -p "$DEST" # 1. снять дамп базы (если есть) или архив конфигурации # 2. сохранить с меткой времени в $DEST # 3. вычистить архивы старше 14 дней: find "$DEST" -name "*-2*.gz" -mtime +14 -delete
Полную стратегию вокруг этих скриптов — уровни копий, шифрование, тестирование восстановления — смотрите в статье про правило 3-2-1.
Базовый чек-лист безопасности
- 2FA включена и для DSM, и для критичных сервисов (Vaultwarden, Nextcloud) отдельно.
- Порты admin-панелей (NPM :81, и подобные) не смотрят в интернет напрямую.
- fail2ban или Auto Block настроены хотя бы для SSH.
- Реверс-прокси — единственная точка входа снаружи, не десяток открытых портов.
Полные версии — в статьях про харденинг DSM и fail2ban.
Эта страница не заменяет сами статьи — она для того, чтобы не листать заново развёрнутый гайд ради одной команды, которую вы уже видели раньше.