Выбор и настройка облачного сервера
Вы уже упаковали свой MCP-сервер в Docker-контейнер и успешно запускали его локально. Это важный шаг — теперь вы знаете, как работает жизненный цикл контейнера: запуск, остановка, просмотр логов. Но чтобы ваш ИИ-агент был доступен извне, его нужно развернуть на удалённом сервере. Именно этим мы займёмся сейчас.
Выбор облачного провайдера
Первое, с чем предстоит определиться, — это облачный провайдер. Это компания, которая предоставляет виртуальные машины в своём дата-центре. Вы арендуете вычислительные ресурсы по подписке, как офис в коворкинге, но для кода.
Для стартапов и MVP в 2025 году особенно популярны:
- DigitalOcean — простой интерфейс, низкие цены, подходит для международных проектов
- Yandex Cloud — отличный выбор для пользователей из России: локализованные сервисы, поддержка рубля, интеграция с GigaChat и YandexGPT
- AWS — мощная платформа, но избыточна для простого MCP-сервера на начальном этапе
💡 Рекомендация: для первого деплоя выбирайте DigitalOcean или Yandex Cloud. Они проще в настройке и дешевле, чем AWS.
Виртуальная машина: ваш сервер в облаке
Виртуальная машина (ВМ) — это программная копия физического сервера. Представьте, что вы арендуете компьютер в дата-центре, но управляете им через интернет. На этой машине вы и будете запускать Docker-контейнер с MCP-сервером.
При создании ВМ нужно указать:
- Операционную систему: выбирайте Ubuntu 22.04 LTS — она стабильна и хорошо поддерживается
- Размер: для MCP-сервера хватит минимального тарифа (1 ядро, 1 ГБ ОЗУ)
- Регион: выбирайте ближайший к вашей аудитории (например, Москва для Yandex Cloud)
⚠️ Не используйте Windows-машины — они тяжелее, дороже и менее совместимы с Docker.
Настройка сети и брандмауэр
После создания ВМ важно правильно настроить сеть и брандмауэр. Брандмауэр — это система фильтрации сетевого трафика. Он решает, какие соединения разрешены, а какие заблокированы.
По умолчанию все порты закрыты. Нам нужно открыть:
- Порт 22 — для SSH-доступа
- Порт 8080 (или другой, который использует ваш MCP-сервер) — для внешнего доступа к агенту
Все остальные порты должны оставаться закрытыми. Это как дверь в квартиру: даже если дом охраняется, дверь всё равно должна быть заперта.
Пример правил брандмауэра на DigitalOcean:
| Протокол | Порт | Назначение |
|---|---|---|
| TCP | 22 | SSH-доступ |
| TCP | 8080 | Доступ к MCP-серверу |
🔒 Никогда не открывайте порт 22 для всех IP (0.0.0.0/0), если не уверены в безопасности. Лучше ограничить доступ по IP, если возможно.
SSH-доступ: безопасное подключение к серверу
SSH-доступ — это защищённый способ подключения к серверу через терминал. Вместо пароля рекомендуется использовать SSH-ключи, потому что они надёжнее и автоматизируются.
Генерация SSH-ключа
Выполните в терминале:
ssh-keygen -t ed25519 -C "ваш_email@example.com"
Это создаст два файла:
id_ed25519— приватный ключ (никому не передавайте!)id_ed25519.pub— публичный ключ (им можно делиться)
При создании ВМ в облаке вставьте содержимое .pub-файла в поле "SSH Key".
Подключение к серверу
После запуска ВМ подключитесь:
ssh root@ваш_публичный_IP
Если всё настроено верно — вы окажетесь внутри сервера и сможете управлять им.
❌ Не используйте парольную аутентификацию. Это устаревшая и небезопасная практика. Только ключи.
Итог: сервер готов к деплою
Мы разобрали:
- Как выбрать облачный провайдер, подходящий для стартапа
- Что такое виртуальная машина и как её создать
- Зачем нужен брандмауэр и как настроить правила
- Как организовать безопасный SSH-доступ с помощью ключей
✅ Чеклист перед деплоем:
- Выбран провайдер (DigitalOcean или Yandex Cloud)
- Создана ВМ с Ubuntu 22.04
- Настроен брандмауэр: открыты порты 22 и 8080
- Сгенерирован SSH-ключ и добавлен в облако
- Успешно подключились к серверу
Теперь, когда сервер настроен и защищён, мы можем перейти к следующему шагу: деплою Docker-образа с MCP-сервером. Мы научимся копировать образ, запускать контейнер в фоне и настраивать автозапуск.
Готовы превратить ваш локальный агент в облачного помощника? В следующей теме — всё это станет реальностью.