На главную
- Облачные базы данных
- Хранилище S3
- Kubernetes
- Apps
- Обзор
- Принципы работы
- Подключение репозиториев
- Деплой frontend-приложений
- Деплой backend-приложений
- Деплой из Dockerfile
- Управление Apps в панели
- Частые вопросы об Apps
Принципы работы
Основная функция сервиса приложений — автоматический деплой. Apps автоматически выгружает на сервер код вашего сайта, API-сервиса, приложения и т.п.
На сегодня реализована поддержка backend-фреймворков. Развертывание frontend-приложений через Apps станет доступно в ближайшее время.
Процесс работы с Apps при использовании backend-фреймворков выглядит так:
-
Вы подключаете репозиторий к Timeweb Cloud, выполнив вход в свой аккаунт на Github, Gitlab или Bitbucket.
- Сервис автоматически подтягивает код из указанного репозитория и устанавливает зависимости для него. Они хранятся в специальных файлах — например,
requirements.txt
для Python илиpackage.json
для Node.JS. -
Сервис определяет параметры сборки для вашего приложения и собирает приложение.
-
Сервис запускает Docker-контейнер с нужным окружением — и внутри него запускает ваше приложение.
-
Сервис автоматически настраивает Nginx для проксирования вашего домена на приложение, запущенное в Докере.
В тот момент, когда вы выполняете git push
в свой репозиторий, этот же цикл повторяется заново (если у вас включен автодеплой), начиная с пункта 3: сервис подтягивает код, ставит зависимости, собирает приложение и так далее. В том числе — запускает новый Docker-контейнер, в котором не будет ничего из прежнего контейнера. Таким образом обеспечивается чистота деплоя.
К приложению будет привязан бесплатный технический домен с SSL-сертификатом Let's Encrypt, который можно использовать для тестирования работы и, если вам это подходит, — для запросов к приложению.
Работа сервиса с frontend-приложениями имеет одно важное отличие от backend-приложений — после сборки мы не создаем Docker-контейнер, приложение хранится в директории на сервере. Такое приложение — это статические файлы, которые отдаются клиентам с сервера.
Однако, в отличие от обычного размещения приложения на сервере, где вам нужно самостоятельно настраивать окружение, сервис Apps, как и в случае с бэкенд-приложениями, сделает всё за вас:
-
«подтянет» код из репозитория,
-
установит зависимости и ПО,
-
настроит Nginx,
-
выпустит SSL-сертификат,
-
выполнит сборку вашего приложения.
А в дальнейшем будет автоматически деплоить изменения — если вы оставите включенной опцию автодеплоя.
Была ли статья полезна?