Перейти до вмісту

Як це працює

Що відбувається за адресою вашого застосунку.

Від оплати до працюючого застосунку під наглядом — і що з ним буде, якщо ви перестанете платити. Ця сторінка описує, як платформа працює сьогодні, і прямо каже, чого ще немає.

Запуск

Від оплати до живої адреси.

Заявок ніхто не створює: платформа сама проходить кожен крок, а ваша панель показує, на якому етапі застосунок.

  1. Платіж підтверджено

    Платіжний провайдер повідомляє нам, що підписка активна. Дані картки йдуть провайдеру; ми їх ніколи не бачимо.

  2. Розгорнуто

    Платформа розміщує ваш застосунок на нашому спільному сервері в ЄС і запускає його у власних контейнерах — зі своєю конфігурацією та щойно згенерованими секретами, із точної версії, яку ми зафіксували.

  3. Перевірено

    Ми запитуємо адресу перевірки стану застосунку ззовні, як це зробив би відвідувач, і чекаємо нормальної відповіді. Лише ця відповідь переводить статус із «розгортається» в «працює».

  4. Працює

    Застосунок відповідає на власній HTTPS-адресі, і ми надсилаємо адресу вам електронною поштою.

Якщо перевірка не пройдена. Якщо застосунок не відповів за відведений час, запуск позначається невдалим і оператор отримує сигнал. Запуск, відповіді якого ніхто не бачив, ніколи не показується як працюючий.

Ізоляція

Власний стек, а не спільний акаунт.

Кожен застосунок працює як окремий стек Docker Compose на спільному сервері.

  • Власні контейнери

    Застосунок і його база даних, якщо вона окрема, працюють у контейнерах, запущених лише для вас. Застосунки інших клієнтів працюють у своїх стеках.

  • Власні дані

    Файли та бази даних лежать на томах, що належать вашому стеку. Контейнер бази даних перебуває у внутрішній мережі стеку й не опублікований ні на сервері, ні в інтернеті; порт самого застосунку не опублікований на публічній адресі сервера.

  • Ліміти, за які ви платите

    Кожен стек обмежений лімітами CPU та пам’яті свого тарифу.

Де закінчується розділення. Стеки різних клієнтів ділять машину та її ядро. Це ізоляція контейнерів, а не окрема віртуальна машина в кожного. Виділений сервер є в наших планах.

Адреса і HTTPS

Власна адреса, захищена з першого запиту.

Де працює застосунок, як він називається і як до нього доходить трафік.

  • В ЄС

    Сервери працюють у Франкфурті (AWS Lightsail, eu-central-1), і сьогодні всі застосунки працюють там. Вибір іншого регіону є в наших планах.

  • Власний піддомен

    Застосунок відповідає за адресою виду ім’я.poof.run, яку ви обираєте під час купівлі; налаштовувати DNS не потрібно. Застосунок може відповідати й за вашим власним доменом.

  • Лише HTTPS

    Один wildcard-сертифікат Let’s Encrypt покриває всі адреси на сервері й поновлюється сам. На звичайний HTTP відповідь лише одна — перенаправлення на HTTPS, а проксі — єдиний публічний шлях до застосунку.

Моніторинг

Під наглядом, щоб вам не довелося.

Цілодобово йдуть перевірки двох видів: кожного застосунку та кожного сервера.

  • Застосунок опитується

    Кожні кілька хвилин платформа запитує адресу перевірки стану застосунку ззовні, як відвідувач. Погана відповідь, тайм-аут або обрив з’єднання вважаються промахом. Серія промахів — не один (це нормально під час оновлення) — відкриває інцидент і надсилає лист нашим операторам; коли застосунок відновлюється, лист іде знову.

  • Машина вимірюється

    Кожні кілька хвилин вимірюються стан сервера, CPU, пам’ять, диск і запас burst-потужності. Мало вільного місця на диску, вичерпаний запас burst-потужності або невдала перевірка провайдера відкривають інцидент.

  • Контейнери перезапускаються самі

    Контейнер, що впав, запускається знову й повертається після перезавантаження сервера, якщо ми не зупинили його навмисно.

Що це таке. Сигнали отримують наші оператори, а не ви, і перевірки показують, що застосунок відповідає, а не що в нього всередині.

Оновлення

Версії обираємо ми, зміни вносимо ми.

Ви нічого не встановлюєте і не патчите. Оновлення при цьому не тихі: ось як вони влаштовані.

  • Точні версії

    Застосунок працює на одній точній версії образу, а не на плаваючому тегу на кшталт «latest», — працює саме те, що ми підготували.

  • Викочуємо ми

    Нова версія потрапляє у ваш застосунок, коли оператор запускає оновлення — з вашої версії на наступну за нею. Застосунок перезапускається на ній, тож можлива коротка перерва.

  • Лише вперед

    Відкоту немає. Оновлення може змінити базу даних застосунку так, що це не скасувати, а резервних копій ми поки не робимо — повертатися нікуди.

Оплата та життєвий цикл

Оплата, зупинка і що залишається.

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

  1. Платіж не пройшов

    Застосунок продовжує працювати, поки платіжний провайдер повторює списання. Ви отримуєте лист із проханням оновити спосіб оплати та нагадування, поки це триває.

  2. Підписка закінчилася

    Коли її скасовано або спроби списання вичерпано, застосунок зупиняється (зупиняється, а не видаляється), і ми пишемо вам. Скасування на кінець періоду залишає застосунок працювати до цього строку.

  3. Зберігається 30 дн.

    Дані залишаються на сервері 30 дн. з моменту зупинки. Щоб повернути застосунок у цей строк, напишіть нам — дані ще на місці. За 7 дн. до кінця ми пишемо вам.

  4. Потім видаляється

    Далі йде фінальне вікно в 24 год з останнім листом; доки воно не закінчилося, достатньо написати нам, і застосунок повернеться. Після цього застосунок, томи з даними та файли знищуються, і це не скасувати.

За цим немає резервної копії. Видалено — значить, зникло: копії для відновлення в нас немає, тому й потрібні нагадування.