ИТ-гайд: как запустить первое приложение
Инструкция по запуску вашего первого мобильного приложения c автоматически масштабируемым бэкендом
Обратная сторона приложения — ИТ-инфраструктура. С бессерверными технологиями реально писать код, не думая о поддержке. Serverless-технологии помогают автоматизировать рутинные операции и быстрее производить вычисления. Редакция Selectel подготовила пошаговое руководство по запуску вашего первого приложения на базе Serverless-технологий, которые подходят для пиковых нагрузок и экономят средства в периоды спада активности, сокращая потребление ресурсов.
В чем особенность serverless-технологий? Бессерверные вычисления дают возможность создавать приложения, не заботясь о поддержке инфраструктуры. Не нужно настраивать сервер — можно просто писать код.
В инструкции расскажем, как на примере Flask-приложения начать использовать бессерверные технологии и запустить первое мобильное приложение.
Оглавление
2. Подготовка виртуальной машины
2.1. Установка и запуск Docker
2.2. Установка образа
5. Опрос
Подготовка окружения
Все нижеперечисленные команды нужно выполнять на виртуальной машине.
Подготовьте виртуальную машину с CouchDB и тестовым приложением в контейнере, используя Docker.
Готовим виртуальную машину
Установка и запуск Docker
Обновите репозитории:
Удалите пакеты Docker, установленные по умолчанию:
Инсталлируйте Docker:
Запустите Docker в качестве демона:
Установка образа
Скачайте Docker образ CouchDB:
Скачайте наш пример Flask-приложения:
Запустите контейнер с CouchDB:
Запустите контейнер с shiny-flask-app:
Где server_url — это Floating IP вашей виртуальной машины и порт, на котором слушает CouchDB, а admin_username и admin_password эквиваленты COUCHDB_USER и COUCHDB_PASSWORD соответственно.
Готовим базу данных
Создайте в CouchDB новую базу данных под названием Products, для чего используйте следующую команду:
Где couchdb_ip — Floating IP виртуальной машины, на которой запущены контейнеры.
Используя API приложения создайте в CouchDB запись:
Где XXX.XXX.XXX.XXX — IP адрес виртуальной машины, на которой поднят Docker контейнер.
Проверить, что запись в базе создана, можно используя этот запрос:
Работа с проектом
Создайте новый проект в Облачной платформе или используйте существующий.
Назовите проект.
Перейдите в созданный проект.
Перейдите на вкладку Функции.
Нажмите Создать функцию.
Укажите имя функции и нажмите Создать функцию.
Нажмите Редактировать, чтобы загрузить код и настроить функцию.
Скачайте репозиторий с кодом.
Создайте архив с кодом функции, находясь в корневой директории репозитория:
Загрузите архив с кодом приложения из нескольких файлов или файл с кодом функции.
Укажите путь к файлу с кодом в архиве: /shiny_flask_app/api/products.py
Укажите название вызываемой функции.
Добавьте переменные окружения с помощью кнопки Добавить.
Первая переменная, которая нам необходима, admin_username. Присвойте ей значение user.
Таким же образом присвойте еще две необходимые переменные: admin_password и server_url со значениями password и XXX.XXX.XXX.XXX:5984 соответственно.
Остановимся подробнее на server_url — это IP-адрес виртуального сервера с запущенным CouchDB и порт, на котором CouchDB слушает запросы.
Далее сохраните введенную информацию и разверните функцию с помощью кнопки Сохранить и развернуть.
Чтобы вызвать функцию с помощью HTTP-запроса, сделайте ее публичной.
Скопируйте URL.
Вызовите функцию, добавив к запросу URL из панели.
Где хххх такой же, как в запросе в начале руководства, а URL взят из настроек функции.
Готово. Вы запустили свое первое Serverless-приложение!
Пока мы готовим для вас новые материалы в блог Selectel, приходите обсуждать в комментарии. Запускали приложения? Как все прошло?