Покрокове проходження з 7 кроків, що проведе вас від нової машини Linux з Docker до повністю активованого екземпляра SealRoute. Кожен крок містить точну команду чи знімок екрана, які вам потрібні.
docker --version
docker compose version
docker-compose.yml постачається з реверс-проксі Caddy, що автоматично обробляє HTTPS, коли ви встановлюєте HOST=your.domain.Створіть робочу теку та отримайте виробничий файл compose з репозиторію. Він уже з’єднує SealRoute, Postgres і Caddy.
mkdir sealroute && cd sealroute
curl -L https://raw.githubusercontent.com/sealroute/sealroute/main/docker-compose.yml -o docker-compose.yml
curl -L https://raw.githubusercontent.com/sealroute/sealroute/main/deploy.sh -o deploy.sh
chmod +x deploy.sh
Якщо ви бажаєте клонувати весь пакет розгортання: git clone https://github.com/sealroute/sealroute.git && cd sealroute. У будь-якому разі наступні кроки однакові.
SealRoute читає свою конфігурацію зі змінних середовища. Створіть файл .env поруч із вашим файлом compose. Мінімум, що вам потрібно:
# Where the app is reachable from a browser. Use https://your.domain in
# production or http://localhost:3000 for a local trial.
APP_URL=https://your.domain
HOST=your.domain
# Generate with `openssl rand -hex 64` and keep it secret.
SECRET_KEY_BASE=replace-me-with-a-long-random-string
# --- Aplindo licensing ------------------------------------------------------
APLINDO_LICENSE_API_URL=https://license.aplindo.com
APLINDO_LICENSE_PRODUCT_SLUG=SealRoute
APLINDO_LICENSE_DEFAULT_AMOUNT_IDR=5000000.00
APLINDO_LICENSE_HEARTBEAT_SECONDS=3600
Більш повний приклад із додатковими параметрами міститься в .env.example.
Запустіть SealRoute, Postgres та реверс-проксі у фоновому режимі:
docker compose up -d
Спостерігайте за журналами завантаження, доки не побачите, що Puma слухає на tcp://0.0.0.0:3000:
docker compose logs -f app
Перше завантаження також виконує міграції бази даних. На хості з 2 ГБ це зазвичай завершується менш ніж за хвилину.
Відкрийте застосунок у браузері. Оскільки користувачів ще немає, SealRoute перенаправляє вас на сторінку /setup. Тут ви створюєте перший обліковий запис адміністратора та метадані свого акаунта.
Заповніть:
APP_URL у вашому .env. Використовується для генерування посилань на підписання в листах.
Натисніть Надіслати. SealRoute створює обліковий запис, виконує вхід і перенаправляє вас на сторінку /license.
Екземпляр SealRoute із самостійним хостингом потребує активної ліцензії, щоб розблокувати екрани після входу. Сторінка /license має дві картки: Придбати ліцензію зверху та Активувати ліцензію знизу.
У картці Придбати ліцензію встановіть кількість місць, які вам потрібні. Ціна за одиницю береться з вашого налаштування APLINDO_LICENSE_DEFAULT_AMOUNT_IDR (наразі IDR 1.499.000 за місце), а підсумок автоматично перераховується, коли ви змінюєте кількість місць.
Натисніть Придбати ліцензію. SealRoute відкриває модальне вікно з iframe оплати Aplindo. Завершіть оплату там. Щойно транзакція пройде успішно, Aplindo надсилає ключ ліцензії на адресу, яку ви ввели, а той самий ключ також відображається на сторінці успішної оплати.
Скопіюйте ключ ліцензії зі сторінки успіху або зі свого листа, потім вставте його в картку Активувати ліцензію на /license:
Натисніть Активувати. SealRoute звертається до сервера ліцензій Aplindo, прив’язує ключ до цієї машини та перезавантажується. Ви побачите картку Поточна ліцензія вгорі зі статусом active, слаг продукту, ID ліцензії, ID машини, дату закінчення терміну дії та позначку часу останнього heartbeat.
SealRoute планує завдання heartbeat, що повторно перевіряє ліцензію в Aplindo кожні APLINDO_LICENSE_HEARTBEAT_SECONDS секунд (за замовчуванням: щогодини). Якщо ліцензію відкликано або термін дії закінчився, наступний heartbeat це відобразить.
SealRoute тепер повністю працездатний. Відвідайте /, і ви потрапите на порожню панель Шаблонів Документів, готову до вашого першого завантаження.
Натисніть Завантажити на панелі, перетягніть PDF або DOCX, потім перетягніть поля на нього - підпис, дату, текст, прапорець тощо.
SealRoute — це насамперед REST API. Згенеруйте токен API в Налаштування → API, потім перейдіть до документація API для наскрізних прикладів 10 мовами.