Памятка по развёртыванию веб-сервера для нескольких сайтов в Docker.
1. База
- обновить систему, настроить SSH-ключи, отключить вход по паролю;
- установить Docker и compose-плагин;
- выделить под проекты отдельный каталог (например,
/opt/stacks).
2. Реверс-прокси
Один контейнер nginx (или Traefik/NPM) принимает весь трафик и раздаёт его по доменам или портам. Для схемы «по портам» каждый сайт получает свой порт:
server {
listen 801;
server_name example.com;
root /srv/sites/example/public;
}
3. Права и безопасность
- файлы сайтов — отдельная группа с правами на чтение для контейнера;
server_tokens off;и лишние порты закрыты файрволом;- пароли и ключи — в
.env, который не попадает в репозиторий.
4. Бэкапы
Минимум: cron + tar по конфигам и исходникам, ротация 7 дней. Проверяйте восстановление до того, как оно понадобится.