Инфраструктура, на которой можно работать
Сайт падает после перезагрузки, фоновое задание перестало выполняться, журнал занял диск или выпуск обновления зависит от ручных команд одного человека. Разбираем устройство размещения и приводим эти действия к понятному порядку.
Настраиваем окружение для сайтов, магазинов, API и внутренних сервисов. Учитываем текущие приложения, нагрузку, домены, доступы и требования к данным. Для работающего сервера планируем изменения так, чтобы можно было проверить каждый этап и вернуть нужное состояние.
Какие задачи решаем
- Linux-серверы, Nginx, PHP-FPM, HTTPS, домены и DNS.
- Размещение приложений в Docker и настройка их сетей, данных и запуска.
- Фоновые процессы и очереди: systemd, cron, Laravel Horizon.
- Автоматизация сборки и выпуска через Git и CI/CD.
- Перенос сайта или приложения между хостингом, VPS и серверами.
- Ротация журналов, контроль места, резервное копирование и проверка восстановления.
Что остаётся после настройки
| Результат | Что можно проверить |
|---|---|
| Схема размещения | Понятно, где работают приложения и где лежат их данные. |
| Запуск сервисов | Процессы запускаются после перезагрузки в нужном порядке. |
| Выпуск изменений | Зафиксированы шаги публикации, проверки и возврата версии. |
| Наблюдение | Есть журналы и сигналы о сбоях, которыми можно пользоваться. |
Отдельная задача или сопровождение
Можно перенести один сайт, настроить HTTPS, исправить запуск очереди или подготовить автоматический выпуск. Если нужно регулярное обслуживание, определяем контролируемые сервисы, часы работы и порядок разбора инцидентов.
Сначала показываем, какой сбой устраняется или какое действие автоматизируется. После изменения проверяем приложение по рабочему сценарию — открытия порта и запущенного процесса для приёмки недостаточно.
Частые вопросы
Обязательно переносить всё в Docker?
Нет. Контейнеры полезны, когда решают конкретную задачу: воспроизводимость окружения, изоляцию или выпуск. Работающую схему не меняем ради самого инструмента.
Можно обслуживать сервер с несколькими сайтами?
Да. Сначала определяем состав приложений, их данные, пользователей и зависимости. Изменения одного проекта проверяем с учётом остальных.
Настроите автоматический выпуск из Git?
Да. Определяем сборку, целевое окружение, проверки, миграции и возврат версии. Секреты хранятся отдельно от репозитория и артефактов сборки.