why-server — зачем команде свой сервер¶
Что даёт арендованная машина в интернете и почему без неё команда быстро упирается в потолок.
Свой сервер — это компьютер, арендованный в дата-центре, который работает 24/7 и доступен из интернета. Как квартира, только для программ.
Зачем он нам:
- Сайты и порталы. Наш портал знаний (этот сайт) должен быть доступен всем и всегда — с личного ноутбука так не получится: ноут выключается.
- Боты. Telegram-бот должен отвечать и ночью — значит, он должен крутиться на машине, которая не спит.
- Общие сервисы. База данных, MCP-серверы, вебхуки — всё, чем пользуется команда, а не один человек.
Чем сервер отличается от «облака подписок»: это наша машина, мы ставим туда что хотим и платим фиксированно за железо, а не за каждый чих.
VPS (virtual private server) — виртуальная машина у хостера: свой IP, root-доступ, фиксированная цена. Для команды это:
- Точка публикации — статические сайты, порталы (вроде этого, см.
site/README.mdв репо), демо. - Рантайм для сервисов — боты, MCP-серверы, вебхуки, cron-задачи.
- Общая песочница — dev/staging окружение, одинаковое у всех, а не «у меня на маке работает».
Принципы, которых держимся¶
- Всё в Docker. Один сервис — один контейнер, состояние воспроизводимо из
docker-compose.yml, откат = пересоздать контейнер. Ничего не ставим в систему напрямую, кроме docker и ssh. - Доступ только по SSH-ключам. Пароли выключены. Как это настроить и как дать доступ агенту — в agent-ssh-deploy.md.
- Секреты не в git.
.env-файлы живут на сервере с правами600, копируются черезscp. - Журнал изменений. Любая правка состояния сервера записывается (что, когда, как откатить) — иначе через месяц никто не вспомнит, почему nginx слушает нестандартный порт.
Когда сервер НЕ нужен¶
- Продукт целиком живёт в managed-платформе (Vercel, k8s-кластер) — VPS дублирует её.
- Нужно хранить персональные данные пользователей — это отдельная история с бэкапами и комплаенсом, голый VPS без процессов вокруг не годится.
Связанные страницы¶
- agent-ssh-deploy.md — доступ и деплой руками агента
- install-agents.md — какие агенты бывают