Разворачивай и контролируй

Ночь сменилась рассветом
Птицы щебечут
Не деплоится

древнее хайку, автор неизвестен

Основная сложность для разработчика при развертывании приложений на виртуальных машинах — настройка инфраструктуры: установка веб-сервера, нужных версий языков программирования и необходимых им зависимостей, баз данных и дополнительных сервисов, настройка доставки кода на сервер.

Эти задачи занимают время и, обычно, выполняются системными администраторами. Но в процессе разработки может потребоваться, например, развернуть приложение на несколько часов — протестировать функционал. Или же быстро выложить прототип приложения, какой-то учебный проект и т.п.

Конечно, в современном мире существует множество способов автоматизировать рутинные процессы по настройке серверной инфраструктуры.

Деплойми — система развертывания, настройки и управления веб-приложениями. Выполнена на базе open source проекта dokku отличительная особенность которого — развертывание приложений используя подходы: Heroku buildpack и Dockerfile.

Деплойми управляет жизненным циклом приложения на одной или нескольких серверах через веб-интерфейс. Поможет в развертывании типовых приложений за счет предустановленных конфигураций buildpack развертывания.

Что умеет Деплойми?

  • Разворачивать приложения автоматически определяя тип c помощью Heroku buildpacks или с помощью предустановленной конфигурации.
  • Разворачивать приложения с помощью пользовательского Dockerfile.
  • Создавать и управлять базами данных: привязывать к приложениям, экспортировать и импортировать дамп.
  • Управлять переменными окружения приложения и аргументами в Dockerfile.
  • Управлять Nginx проксрованием host nginx port:container port.
  • Монтировать директории host:container
  • Привязывать к приложению домен и SSL сертификат Let's Encrypt
  • Устанавливать приложению базовую авторизацию.

Для кого Деплойми?

  • Деплойми — инструмент веб-разработчика. Для развертывания приложений без необходимости знаний серверной инфраструктуры.
    Разработчику вообще не придется взаимодействовать с настройками сервера, чтобы поднять приложение.
  • Монолитное или микросервисное веб-приложение, одна или несколько баз данных, dev, staging и другие состояния приложений — Делпойми развернет и поможет управлять.
  • Деплойми — инструмент специалиста по тестированию. Проверить функциональность фичи, создав для нее отдельное приложение, привязать БД и удалить, когда тестирование будет завершено. Для этого потребуется всего несколько кликов.
  • Деплойми — инструмент системного администратор. Подойдет для создания площадок для разработки, если в компании разработчики работают на удаленных машинах. И даже разработчик сам создаст себе площадку для разработки не тревожа сисадмина.
  • Деплойми — инструмент обучения. Учиться разрабатывать веб-приложения станет проще, Деплойми поможет запускать учебные проекты какой бы язык программирования вы не использовали, конечно если это рабочий код)

Создавайте веб-приложения на PHP, NodeJs, Python, Java, Ruby, Go, Rust, .Net или просто HTML и разворачивайте в несколько кликов.

Запросить презентацию и узнать цены

Демонстрация работы Деплойми на примере развертывания копии сайта xdsoft.ru

Конфигурация виртуальной машины 1CPU 1GB RAM, веб приложение выполнено на фреймворке php Symfony версии 3, сбока frontend — webpack

Для развертывания приложения используется предустановленный тип приложения PHP Symfony, за счет чего на этапе сборки проекта добавляются конфигурационные файлы веб сервера, php.ini и запуска приложения.

Создание, развертывание и загрузка дампа БД

Загрузка данных (uploads)

Так как на видео показан процесс развертывания копии сайта, то для его работы нужно загрузить данные, которые были загружены на сайт через административную часть.

Для загрузки бинарных данных используется SCP, данные загружаются в директорию, которая примонтирована к контейнеру приложения.

Установка SSL сертификата Let's encrypt

Установка базовой авторизации

Наши клиенты
rtk
dit
rospatent
fips
otpbank
mostransport
codd
tvcenter
maxima-telecom
sirena
mbm