Що встановлено на вашому сервері Dokku?
- Dokku v0.38.34 з офіційного скрипту початкового налаштування, ліцензія MIT
- Docker для контейнерів ваших застосунків і Nginx для маршрутизації
- Плагін dokku-letsencrypt для безкоштовних сертифікатів HTTPS для кожного застосунку
- Глобальний домен sslip.io, тож застосунки відкриваються за адресою appname.IP-with-dashes.sslip.io
- Ключ SSH із вашого замовлення, якщо ви його вказали, уже доданий у Dokku
- 2 ГБ swap і брандмауер із відкритими портами 22, 80 і 443
Який розмір потрібен для Dokku?
Dokku офіційно потребує 1 ГБ пам’яті й радить swap, якщо її менше. Це встановлення додає 2 ГБ swap. У наших тестах на справжньому сервері з 1 ГБ і 1 ядром невеликий приклад на Next.js зібрався й запустився через git push приблизно за 7 хвилин. Збірки виконуються на сервері, тож проєкти на Node.js швидко заповнюють пам’ять, і як орієнтир для важких збірок розгляньте 2–4 ГБ. Кожен застосунок і база даних — окремий контейнер, тож додавайте їхні потреби. Якщо цього не вистачить, збільшуйте RAM, ядра й диск окремо у своїй панелі.
| Використання | Розмір | Ціна | Обрати |
|---|---|---|---|
| Новий сайт | 1 GB RAM · 1 vCore · 25 GB NVMe | $2.59/міс. | |
| Сайт, що росте | 2 GB RAM · 1 vCore · 40 GB NVMe | $4.02/міс. | |
| Завантажений сайт | 4 GB RAM · 2 vCore · 60 GB NVMe | $6.91/міс. |
Кому підійде?
- Розробникам, які віддають перевагу командному рядку й не потребують вебпанелі
- Побічним проєктам, API та ботам, що мають працювати за фіксовану щомісячну ціну
- Усім, хто хоче розгортання через git push з buildpack або Dockerfile на невеликому сервері
- Тим, хто впевнено почувається з SSH і любить тримати все у власних руках
Що буде після замовлення?
- Задайте розмір і завершіть оплату. Ваш сервер запускається, а Dokku встановлюється сам. У наших тестах на справжніх серверах це зайняло близько 10 хвилин.
- У панелі відкрийте сервер у розділі «Мої сервери» й скопіюйте IP-адресу з рядка «Адреса підключення» на вкладці «Огляд».
- Якщо під час замовлення ви не вказали ключ SSH, підключіться через SSH і виконайте: echo 'ssh-ed25519 AAAA...' | dokku ssh-keys:add mine
- Створіть застосунок на сервері: dokku apps:create myapp
- У теці проєкту виконайте: git remote add dokku dokku@IP:myapp, а потім git push dokku main
- Для HTTPS виконайте на сервері: dokku letsencrypt:set myapp email [email protected], а потім dokku letsencrypt:enable myapp
З кожним сервером
- Щоденне резервне копіювання входить у ціну
- Необмежений трафік
- Повний доступ root
- Пізніше можна збільшувати чи зменшувати RAM і CPU, а також збільшувати диск
- Розташування: Istanbul · IST-1.
Корисно знати
- Dokku керується командами й не має вебінтерфейсу. Якщо вам зручніше працювати в браузері, подивіться сервер із установленим Dokploy.
- Завдання поновлення сертифікатів вмикається під час налаштування (dokku letsencrypt:cron-job --add). Якщо його прибрати, сертифікати перестануть поновлюватися самі.
- Плагін бази даних не встановлено. Для PostgreSQL спершу виконайте dokku plugin:install https://github.com/dokku/dokku-postgres.git
- Якщо під час збірки на малому розмірі не вистачає пам’яті, збільште сервер у своїй панелі.
- Оновлення Dokku, його плагінів і ваших застосунків — ваша відповідальність.
Dokku: запитання й відповіді
Скільки RAM потрібно Dokku?
Dokku офіційно потребує 1 ГБ пам’яті, чого вистачає для невеликого застосунку. Збірки виконуються на сервері, тож як орієнтир для проєктів на Node.js або Next.js розгляньте 2–4 ГБ. Збільшити сервер можна пізніше у своїй панелі.
Як розгорнути застосунок за допомогою Dokku?
Створіть застосунок на сервері командою dokku apps:create, додайте сервер до свого проєкту командою git remote add dokku dokku@IP:myapp, а потім виконайте git push dokku main. Dokku збирає й запускає застосунок, а після завершення розгортання виводить його адресу.
Які проєкти може збирати Dokku?
Dokku сам визначає тип вашого проєкту й збирає його через buildpack або ваш власний Dockerfile. Якщо автоматичне визначення не потрібне, задайте збирач для кожного застосунку командою builder:set.
Як підключити власний домен до Dokku?
Спрямуйте A-запис домену на IP сервера, а потім виконайте на сервері dokku domains:set myapp example.com. Після цього виконайте dokku letsencrypt:enable myapp, щоб отримати сертифікат для нової адреси.
Як додати базу даних у Dokku?
Dokku отримує бази даних із плагінів. Встановіть офіційний плагін PostgreSQL, створіть базу командою dokku postgres:create mydb і підключіть її командою dokku postgres:link mydb myapp. Ваш застосунок отримає адресу як DATABASE_URL.
Чи є в Dokku вебпанель?
Ні. Dokku керується через SSH командами, а root-доступ ваш. Якщо хочете розгортати з браузера, оберіть сервер із установленим Dokploy.