Создание сервисов
Сервис — это ваше приложение, база данных или сайт, работающие в облаке. Все сервисы создаются одним мастером и живут на вкладке «Сервисы» в панели.
Откройте console.muerte.cloud и перейдите в раздел Сервисы.
Какие бывают сервисы#
| Field | Description |
|---|---|
| Статический сайт | HTML/CSS/JS, сборки React, Vue, Astro и других фронтенд-фреймворков |
| Веб-сервис | Приложение или API, доступное из интернета по домену |
| Приватный сервис | Работает только внутри вашего окружения, наружу не публикуется |
| Воркер | Фоновая обработка: очереди, рассылки, длительные задачи. Домена не имеет |
| Cron-сервис | Контейнер, который запускается по расписанию и завершается |
| PostgreSQL / Redis / MongoDB | Управляемые базы данных с готовыми доступами |
Пошагово#
- 1Откройте мастер созданияРаздел Сервисы → Создать сервис, затем выберите тип. Тип определяет, какие настройки вы увидите дальше: домен и порт спрашиваются только у веб-сервисов.
- 2Выберите источник кода
Для приложений доступны три источника:
- Каталог — готовые приложения в один клик (панели, CMS, игровые и медиасерверы). Ничего настраивать не нужно.
- Репозиторий — подключите Git-аккаунт, выберите репозиторий и ветку. Каждый новый коммит может запускать пересборку.
- Архив — загрузите
.zipс проектом. Подходит, если кода нет в Git.
Для баз данных шаг источника пропускается.
- 3Настройте сборкуТип сборки определяет, как код превращается в работающий сервис. Если не уверены — оставьте
Railpack: он сам определит язык (Node.js, PHP, Python, Go, Java и другие) и подберёт команды. - 4Ресурсы и тарифВыберите план и укажите CPU и RAM. Самая частая причина падения сборки — нехватка памяти. Панель показывает, сколько слотов и ресурсов уже занято по плану.
- 5Переменные окруженияЗадайте настройки, которые не должны лежать в коде: ключи API, строки подключения, режим работы. Формат —
KEY=value, по одной паре в строке. Значения скрыты в интерфейсе и не попадают в логи сборки. После изменения переменных нужен передеплой. - 6Порт и домен (для веб-сервисов)Укажите порт, который слушает приложение внутри контейнера: например
3000для Node.js,8000для Python,80для nginx. Панель создаст технический домен и направит на этот порт весь трафик. - 7Создание и первая сборкаНажмите Создать. Сервис появится со статусом сборки, а на вкладке Deployments пойдёт живой лог. После успешной сборки статус меняется на Работает, домен становится доступен.
Типы сборки
| Field | Description |
|---|---|
| Railpack | Универсальный автоопределяемый вариант, рекомендуется по умолчанию |
| Nixpacks | Альтернативный автосборщик, полезен для нестандартных стеков |
| Paketo Buildpacks | Корпоративные сборки по стандарту Cloud Native Buildpacks |
| Dockerfile | В репозитории есть свой Dockerfile и нужен полный контроль |
| Static | Готовые статические файлы, сервер не нужен |
Что настроить сразу после создания#
- Свой домен, если сервис публичный.
- Хранилище для файлов, которые нельзя терять при передеплое.
- Резервные копии для хранилищ и баз данных.
- Задачи по расписанию, если нужны регулярные операции.
Управление созданным сервисом#
| Field | Description |
|---|---|
| Overview | Статус, ресурсы, быстрые действия: запуск, остановка, передеплой. |
| Deployments | История сборок, логи и откаты. |
| Logs | Живые логи приложения. |
| Metrics | Потребление CPU и памяти. |
| Variables | Переменные окружения. |
| Settings | Порт, домены, хранилища, удаление сервиса. |
Частые вопросы#
Можно ли изменить тип сборки после создания?
Да, на вкладке Settings. После изменения запустите передеплой.
Что происходит при остановке сервиса?
Контейнер выключается, ресурсы освобождаются, данные в хранилищах и базах сохраняются. Запуск возвращает сервис в работу без пересборки.
Удаление сервиса обратимо?
Нет. Удаляются контейнер, домены и подключённые хранилища. Сохранятся только резервные копии, уже выгруженные в объектное хранилище.
Если сборка упала
Раскройте деплой в истории и прочитайте лог. Кнопка Скопировать рядом с логом пригодится, если понадобится отправить его в поддержку.
# типичный случай: не хватило памяти при установке зависимостей
Killed
error Command failed with exit code 137