Розгортання PocketBase на VPS для швидкої розробки застосунків
TL;DR
У цьому детальному посібнику ми крок за кроком налаштуємо та розгорнемо PocketBase на вашому VPS, перетворивши його на потужну та гнучку платформу для швидкої розробки веб- та мобільних застосунків. Ви навчитеся встановлювати, конфігурувати, забезпечувати безпеку та підтримувати PocketBase, використовуючи актуальні версії ПЗ та найкращі практики.
- Встановлення PocketBase на Ubuntu 24.04 LTS з використанням systemd.
- Налаштування безпечного доступу через Caddy з автоматичним HTTPS.
- Забезпечення базової безпеки сервера за допомогою UFW та Fail2ban.
- Створення системи резервного копіювання для даних PocketBase.
- Розуміння необхідної конфігурації VPS та вибір відповідного плану.
Що ми налаштовуємо і навіщо
PocketBase – це неймовірно потужний і легкий бекенд з відкритим вихідним кодом, написаний на Go, який включає вбудовану базу даних SQLite, API (REST та Realtime), а також інтуїтивно зрозумілу адмін-панель. Він призначений для розробників, яким потрібен швидкий старт для своїх проєктів без необхідності розгортання та керування складним стеком технологій. Уявіть собі повноцінний бекенд, який можна запустити як один виконуваний файл!
У результаті цього туторіалу ви отримаєте повністю функціонуючий, безпечний та доступний з інтернету екземпляр PocketBase, готовий до роботи з вашими веб- або мобільними застосунками. Це дозволить вам зосередитися на розробці фронтенду, використовуючи готові API для автентифікації користувачів, керування даними та роботи в реальному часі.
Існує безліч альтернатив PocketBase, таких як Firebase, Supabase, Strapi, Appwrite та інші. Cloud-managed рішення, подібні до Firebase або Supabase, пропонують зручність та масштабованість без необхідності керування інфраструктурою, але часто обмежують вас у гнучкості, прив'язують до конкретного вендора та можуть стати дорогими при зростанні проєкту. Self-hosted варіанти, такі як Strapi або Appwrite, вимагають складнішого налаштування та часто споживають більше ресурсів.
Розгортання PocketBase на власному VPS пропонує золоту середину: ви зберігаєте повний контроль над даними та інфраструктурою, отримуєте високу продуктивність при мінімальних витратах ресурсів і при цьому користуєтеся простотою розгортання, яка наближається до cloud-managed рішень. Це ідеальний вибір для інді-розробників, стартапів на ранніх стадіях або для тих, хто хоче швидко прототипувати ідею, не турбуючись про складність бекенду.
Який VPS-конфіг потрібен для цього завдання
PocketBase відомий своєю економічністю та мінімальними вимогами до ресурсів, особливо для невеликих та середніх проєктів. Однак, щоб забезпечити стабільну роботу та запас на майбутнє, важливо вибрати відповідний VPS-конфіг.
Мінімальні вимоги для PocketBase:
- CPU: 1 vCore (сучасний процесор, 2.5+ GHz)
- RAM: 1 GB (для PocketBase та ОС, без надмірностей)
- Диск: 20 GB SSD (для ОС, PocketBase та початкових даних. Якщо планується багато файлів, знадобиться більше)
- Мережа: 100 Mbps (для більшості завдань достатньо)
Рекомендований VPS-план для більшості випадків (актуально на 2026 рік):
Для комфортної роботи, особливо якщо ви плануєте зберігати файли або очікуєте помірне навантаження, рекомендується наступний конфіг:
- CPU: 2 vCore
- RAM: 2 GB
- Диск: 50 GB NVMe SSD (для кращої продуктивності бази даних)
- Мережа: 200-500 Mbps або 1 Gbps порт (з розумним обсягом трафіку)
Наприклад, можна розглянути VPS із зазначеними характеристиками. Такий план надасть достатню продуктивність для більшості сценаріїв розробки та невеликих production-застосунків.
Коли потрібен dedicated сервер, а не VPS:
Dedicated сервери стають необхідними, коли ваш проєкт досягає дуже високого навантаження, що вимагає гарантованих ресурсів, або якщо у вас є специфічні вимоги до безпеки, відповідності нормативним актам (наприклад, PCI DSS), або якщо вам потрібна максимальна продуктивність введення/виведення, яку не можуть забезпечити віртуалізовані середовища. Для PocketBase це зазвичай означає мільйони запитів на день, величезні обсяги даних (терабайти) або необхідність запуску багатьох інших ресурсоємних сервісів на тій самій машині. Для більшості завдань PocketBase VPS буде більш ніж достатньо.
Локація: на що впливає
Вибір локації VPS впливає на кілька ключових аспектів:
- Затримка (Latency): Чим ближче сервер до вашої цільової аудиторії, тим нижча затримка та швидша відповідь застосунку.
- Законодавство: Різні країни мають різні закони про конфіденційність даних. Переконайтеся, що обрана локація відповідає вашим юридичним вимогам.
- Доступність: Деякі регіони можуть мати кращу зв'язність з певними частинами світу.
Вибирайте локацію, яка географічно ближче до більшості ваших користувачів або до вас, якщо ви єдиний користувач.
Підготовка сервера
Перш ніж приступати до встановлення PocketBase, необхідно виконати базове налаштування безпеки та оновити операційну систему. Ми будемо використовувати Ubuntu Server 24.04 LTS, як найбільш актуальну та стабільну версію на 2026 рік.
1. Підключення по SSH
Підключіться до вашого нового VPS, використовуючи SSH. Замініть your_user на ім'я користувача (часто root або ubuntu) та your_vps_ip на IP-адресу вашого сервера.
ssh your_user@your_vps_ip
Якщо ви використовуєте пароль, введіть його за запитом. Настійно рекомендується використовувати SSH-ключі для підвищення безпеки.
2. Оновлення системи
Завжди починайте з оновлення списку пакетів та їх апгрейду до останніх версій.
sudo apt update # Оновлення списку доступних пакетів
sudo apt upgrade -y # Встановлення останніх версій усіх пакетів
sudo apt autoremove -y # Видалення невикористовуваних пакетів
3. Створення нового користувача з правами sudo (якщо ви працюєте під root)
Робота під користувачем root вкрай не рекомендується. Створіть нового користувача та надайте йому права sudo.
sudo adduser your_new_user # Створення нового користувача
sudo usermod -aG sudo your_new_user # Додавання користувача до групи sudo
Після цього вийдіть з поточної SSH-сесії та увійдіть під новим користувачем.
exit
ssh your_new_user@your_vps_ip
4. Налаштування брандмауера UFW
UFW (Uncomplicated Firewall) – це зручний інтерфейс для керування iptables. Налаштуємо його для дозволу SSH, HTTP та HTTPS трафіку.
sudo ufw allow OpenSSH # Дозволити SSH-з'єднання
sudo ufw allow http # Дозволити HTTP (порт 80)
sudo ufw allow https # Дозволити HTTPS (порт 443)
sudo ufw enable # Увімкнути UFW
sudo ufw status # Перевірити статус UFW
Підтвердіть увімкнення брандмауера, набравши y.
5. Встановлення Fail2ban
Fail2ban допомагає захистити сервер від атак методом підбору (brute-force), блокуючи IP-адреси, з яких надходить занадто багато невдалих спроб входу.
sudo apt install fail2ban -y # Встановлення Fail2ban
sudo systemctl enable fail2ban # Увімкнення автозапуску сервісу
sudo systemctl start fail2ban # Запуск Fail2ban
Fail2ban за замовчуванням налаштований для захисту SSH. Для більш розширеного налаштування можна скопіювати та відредагувати файл /etc/fail2ban/jail.conf у /etc/fail2ban/jail.local.
6. Встановлення базових утиліт
Для зручності роботи та подальшого встановлення PocketBase нам знадобляться деякі утиліти.
sudo apt install curl wget unzip git -y # Встановлення curl, wget, unzip та git
Тепер ваш сервер готовий до встановлення PocketBase.
Встановлення ПЗ — покроково
У цьому розділі ми встановимо PocketBase та Caddy — потужний веб-сервер, який виступатиме в ролі зворотного проксі та автоматично керуватиме HTTPS-сертифікатами Let's Encrypt.
1. Встановлення PocketBase
PocketBase розповсюджується як один виконуваний файл. Ми завантажимо його безпосередньо з GitHub.
# Визначаємо архітектуру вашого сервера
ARCH=$(dpkg --print-architecture)
# Визначаємо актуальну версію PocketBase (наприклад, v0.23.10 на 2026 рік)
PB_VERSION="0.23.10"
# Завантажуємо архів PocketBase
wget -O pocketbase.zip "https://github.com/pocketbase/pocketbase/releases/download/v${PB_VERSION}/pocketbase_${PB_VERSION}_linux_${ARCH}.zip"
# Створюємо директорію для PocketBase
sudo mkdir -p /opt/pocketbase
# Розпаковуємо архів у створену директорію
sudo unzip pocketbase.zip -d /opt/pocketbase/
# Видаляємо завантажений архів
rm pocketbase.zip
# Надаємо права на виконання виконуваному файлу
sudo chmod +x /opt/pocketbase/pocketbase
# Створюємо директорію для даних PocketBase
sudo mkdir -p /opt/pocketbase/pb_data
2. Створення системного сервісу для PocketBase
Щоб PocketBase запускався автоматично при старті сервера та міг керуватися через systemctl, створимо файл юніта systemd.
sudo nano /etc/systemd/system/pocketbase.service
Вставте наступний вміст, замінивши your_new_user на ім'я вашого користувача, під яким працюватиме PocketBase.
[Unit]
Description=PocketBase Service
After=network.target
[Service]
Type=simple
User=your_new_user
Group=your_new_user
WorkingDirectory=/opt/pocketbase
ExecStart=/opt/pocketbase/pocketbase serve --http "0.0.0.0:8090" --dir "/opt/pocketbase/pb_data"
Restart=always
RestartSec=5
[Install]
WantedBy=multi-user.target
Збережіть файл (Ctrl+X, Y, Enter).
Тепер активуємо та запустимо сервіс PocketBase:
sudo systemctl daemon-reload # Перезавантаження конфігурації systemd
sudo systemctl enable pocketbase # Увімкнення автозапуску PocketBase під час завантаження
sudo systemctl start pocketbase # Запуск сервісу PocketBase
sudo systemctl status pocketbase # Перевірка статусу сервісу
Переконайтеся, що сервіс запущено та він активний (Active: active (running)).
3. Встановлення Caddy
Caddy слухатиме порти 80 і 443, перенаправлятиме трафік на PocketBase (який працює на порту 8090) та автоматично керуватиме HTTPS-сертифікатами.
# Встановлення необхідних пакетів для додавання репозиторію
sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https
# Додавання GPG-ключа Caddy
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg
# Додавання репозиторію Caddy
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list
# Оновлення списку пакетів
sudo apt update
# Встановлення Caddy
sudo apt install caddy -y
Caddy буде встановлено як системний сервіс та автоматично запущено. Ми сконфігуруємо його в наступному розділі.
Конфігурація
Після встановлення PocketBase та Caddy необхідно налаштувати їх для спільної роботи. Основне завдання — налаштувати Caddy як зворотний проксі для PocketBase та забезпечити безпечне HTTPS-з'єднання.
1. Налаштування Caddyfile
Caddy використовує файл конфігурації під назвою Caddyfile. Ми відредагуємо його для маршрутизації трафіку до PocketBase.
sudo nano /etc/caddy/Caddyfile
Замініть весь вміст файлу наступним, вказавши ваш домен (наприклад, api.example.com). Якщо у вас немає домену, ви можете використовувати IP-адресу, але HTTPS працюватиме лише з доменом.
your_domain.com {
reverse_proxy localhost:8090
handle_errors {
respond "{err.status_code} {err.status_text}"
}
}
Збережіть файл (Ctrl+X, Y, Enter).
Цей конфіг говорить Caddy:
- Слухати запити для
your_domain.com(або вашої IP-адреси, якщо домену немає). - Автоматично отримувати та оновлювати HTTPS-сертифікати для цього домену.
- Перенаправляти всі вхідні запити на
localhost:8090, де працює PocketBase. - Обробляти помилки, повертаючи стандартний HTTP-статус.
2. Застосування конфігурації Caddy
Після зміни Caddyfile необхідно перезавантажити сервіс Caddy, щоб зміни набули чинності.
sudo systemctl reload caddy # Перезавантаження конфігурації Caddy
sudo systemctl status caddy # Перевірка статусу Caddy
Переконайтеся, що Caddy активний та успішно перезавантажений.
3. Початковий запуск PocketBase та створення адмін-користувача
Тепер PocketBase доступний через ваш домен. Відкрийте браузер і перейдіть за адресою https://your_domain.com/_/. Це шлях до адмін-панелі PocketBase. При першому вході вам буде запропоновано створити користувача-адміністратора. Це критично важливий крок для керування вашою базою даних та API.
Введіть бажаний email та пароль для адміна. Після створення ви будете перенаправлені в панель керування PocketBase.
4. Налаштування секретів через змінні середовища (опціонально, але рекомендовано)
Для більш безпечного зберігання чутливих даних, таких як ключі API або інші секрети, використовуйте змінні середовища. PocketBase підтримує їх. Ви можете відредагувати файл сервісу systemd:
sudo nano /etc/systemd/system/pocketbase.service
Додайте рядок Environment="YOUR_SECRET_KEY=your_value" до секції [Service].
[Service]
...
Environment="[email protected]"
Environment="POCKETBASE_APP_URL=https://your_domain.com"
# Додайте свої змінні:
Environment="MY_CUSTOM_API_KEY=supersecretkey123"
ExecStart=/opt/pocketbase/pocketbase serve --http "0.0.0.0:8090" --dir "/opt/pocketbase/pb_data"
...
Після збереження файлу не забудьте перезавантажити systemd та сервіс PocketBase:
sudo systemctl daemon-reload
sudo systemctl restart pocketbase
Всередині PocketBase ви зможете отримати доступ до цих змінних середовища через код або, якщо це підтримується, через налаштування плагінів.
5. Перевірка працездатності
Ви можете перевірити працездатність PocketBase та Caddy кількома способами:
- Через браузер: Відкрийте
https://your_domain.com(для API) таhttps://your_domain.com/_/(для адмін-панелі). - Через
curl:
curl -v https://your_domain.com/api/health # Перевірка статусу API PocketBase
Ви повинні отримати HTTP 200 OK та JSON-відповідь від PocketBase. Якщо ви бачите помилки або не можете підключитися, перевірте логи Caddy (sudo journalctl -u caddy --since "1 hour ago") та PocketBase (sudo journalctl -u pocketbase --since "1 hour ago").
Резервні копії та обслуговування
Резервні копії – це критично важлива частина будь-якого продакшн-сервісу. PocketBase зберігає всі свої дані в одному файлі SQLite (data.db) та опціонально в директорії files, що значно спрощує процес резервного копіювання.
1. Що резервувати
- База даних:
/opt/pocketbase/pb_data/data.db– це основний файл SQLite, що містить усі ваші колекції, записи, користувачів та налаштування. - Файли: Якщо ви використовуєте PocketBase для зберігання файлів, вони знаходитимуться в директорії
/opt/pocketbase/pb_data/files/. Резервна копія цієї директорії є обов'язковою. - Конфігурація PocketBase: Хоча PocketBase не має складного файлу конфігурації, будь-які зміни в коді (якщо ви використовуєте кастомні хуки або плагіни) або у файлі сервісу systemd (
/etc/systemd/system/pocketbase.service) також варто зберігати. - Конфігурація Caddy:
/etc/caddy/Caddyfile– для швидкого відновлення зворотного проксі.
2. Простий скрипт авторезервування
Ми створимо простий скрипт, який архівуватиме дані PocketBase та зберігатиме їх у тимчасовому місці, а потім синхронізуватиме з віддаленим сховищем. Для прикладу використаємо tar та rclone (який потрібно буде встановити та налаштувати для S3 або іншого хмарного сховища).
# Встановлення rclone, якщо ще не встановлено
# sudo apt install rclone -y
# rclone config # Налаштуйте S3-сумісне сховище або іншого провайдера
sudo nano /usr/local/bin/backup_pocketbase.sh
Вставте наступний скрипт, замінивши your_new_user та your_rclone_remote (ім'я вашого налаштованого rclone-сховища).
#!/bin/bash
# Шляхи
POCKETBASE_DIR="/opt/pocketbase"
PB_DATA_DIR="${POCKETBASE_DIR}/pb_data"
BACKUP_DIR="/tmp/pocketbase_backups"
RCLONE_REMOTE="your_rclone_remote:pocketbase-backups" # Приклад: s3_valebyte:pocketbase-backups
DATE=$(date +%Y%m%d_%H%M%S)
BACKUP_ARCHIVE="${BACKUP_DIR}/pocketbase_backup_${DATE}.tar.gz"
LOG_FILE="/var/log/pocketbase_backup.log"
# Створюємо директорію для тимчасових резервних копій, якщо її немає
mkdir -p "${BACKUP_DIR}"
# Логування
echo "--- Резервне копіювання розпочато о $(date) ---" >> "${LOG_FILE}"
# Зупиняємо PocketBase для забезпечення цілісності БД
echo "Зупиняємо сервіс PocketBase..." >> "${LOG_FILE}"
sudo systemctl stop pocketbase
sleep 5 # Даємо час на зупинку
# Створюємо архів
echo "Створюємо архів резервної копії: ${BACKUP_ARCHIVE}" >> "${LOG_FILE}"
sudo tar -czf "${BACKUP_ARCHIVE}" -C "${POCKETBASE_DIR}" pb_data >> "${LOG_FILE}" 2>&1
# Запускаємо PocketBase
echo "Запускаємо сервіс PocketBase..." >> "${LOG_FILE}"
sudo systemctl start pocketbase
# Копіюємо архів у віддалене сховище за допомогою rclone
echo "Завантажуємо резервну копію на віддалене сховище: ${RCLONE_REMOTE}" >> "${LOG_FILE}"
rclone copy "${BACKUP_ARCHIVE}" "${RCLONE_REMOTE}" >> "${LOG_FILE}" 2>&1
# Видаляємо старі локальні резервні копії (залишаємо останні 7 днів)
find "${BACKUP_DIR}" -type f -name "*.tar.gz" -mtime +7 -delete >> "${LOG_FILE}" 2>&1
echo "Старі локальні резервні копії очищено." >> "${LOG_FILE}"
echo "Резервне копіювання завершено о $(date)" >> "${LOG_FILE}"
echo "---" >> "${LOG_FILE}"
Зробіть скрипт виконуваним:
sudo chmod +x /usr/local/bin/backup_pocketbase.sh
3. Налаштування Cron для автоматичного запуску
Додамо завдання в cron для щоденного запуску скрипта резервного копіювання.
sudo crontab -e
Виберіть редактор (якщо запропонує) та додайте наступний рядок в кінець файлу, щоб скрипт запускався щодня о 3:00 ночі.
0 3 * * * /usr/local/bin/backup_pocketbase.sh >> /var/log/cron.log 2>&1
Збережіть та закрийте файл. Тепер ваші дані регулярно резервуватимуться.
4. Куди зберігати (зовнішній S3 / окремий VPS)
Вкрай важливо зберігати резервні копії окремо від основного сервера. Це захистить вас від втрати даних у разі збою VPS або інших катастроф. Рекомендовані варіанти:
- S3-сумісне сховище: Amazon S3, DigitalOcean Spaces, Backblaze B2, MinIO. Це надійні та відносно недорогі рішення.
- Окремий VPS: Ви можете налаштувати другий, менш потужний VPS виключно для зберігання резервних копій та використовувати rsync або SCP для передачі файлів.
- NAS/локальне сховище: Для особистих проєктів можна використовувати домашній NAS або хмарне сховище, синхронізоване з локальною машиною.
5. Оновлення: rolling vs maintenance window
- Оновлення PocketBase: PocketBase не має вбудованого механізму оновлення через пакетний менеджер. Для оновлення необхідно завантажити новий виконуваний файл з GitHub, зупинити сервіс, замінити старий файл новим, а потім запустити сервіс. Це можна зробити у "вікно обслуговування" (maintenance window), щоб мінімізувати простій.
# Приклад команд для оновлення PocketBase sudo systemctl stop pocketbase # Завантажте нову версію, як у кроці 6.1, але в /tmp, потім: # sudo cp /tmp/pocketbase_new_version /opt/pocketbase/pocketbase sudo systemctl start pocketbase - Оновлення Caddy та ОС: Caddy, як і інші системні пакети, оновлюється через пакетний менеджер Ubuntu. Регулярно запускайте
sudo apt update && sudo apt upgrade -yдля підтримки актуальності системи та Caddy. Ці оновлення зазвичай можна проводити без зупинки сервісів, але іноді потрібне перезавантаження для застосування оновлень ядра.
Завжди тестуйте оновлення на стейджинг-сервері, якщо це можливо, перш ніж застосовувати їх на продакшн.
Усунення несправностей + FAQ
PocketBase не запускається або недоступний
Що перевірити: Переконайтеся, що сервіс PocketBase запущено (sudo systemctl status pocketbase). Перевірте логи сервісу (sudo journalctl -u pocketbase --since "1 hour ago"). Переконайтеся, що порт 8090 не зайнятий іншим процесом (sudo lsof -i :8090) і що UFW дозволяє вихідні з'єднання для PocketBase.
Як виправити: Якщо сервіс впав, логи покажуть причину. Часті проблеми: невірний шлях до виконуваного файлу, неправильні права доступу до директорії pb_data, конфлікт портів. Переконайтеся, що користувач, під яким запущено PocketBase (зазначений у pocketbase.service), має права на читання/запис у /opt/pocketbase/pb_data.
Не працює HTTPS або не відкривається домен
Що перевірити: Перевірте статус Caddy (sudo systemctl status caddy) та його логи (sudo journalctl -u caddy --since "1 hour ago"). Переконайтеся, що ваш домен коректно вказує на IP-адресу VPS (A-запис у DNS). Перевірте, що UFW дозволяє порти 80 та 443. Переконайтеся, що в Caddyfile вказано правильний домен і що немає одруківок.
Як виправити: Часті проблеми: DNS-запис не оновився (зачекайте), одрук у домені, Caddy не може отримати сертифікат через неправильну конфігурацію DNS або брандмауера. Спробуйте тимчасово вимкнути UFW (sudo ufw disable) для діагностики, а потім знову увімкнути.
Який VPS-конфіг мінімально підійде?
Для невеликих проєктів, прототипів або особистих потреб PocketBase може працювати навіть на VPS з 1 vCore CPU, 1 GB RAM та 20-25 GB SSD. Цього достатньо для самого PocketBase та операційної системи. Однак, якщо ви плануєте зберігати багато файлів або очікуєте хоча б невеликий трафік, рекомендується 2 vCore CPU, 2 GB RAM та 50 GB NVMe SSD для кращої продуктивності бази даних та загальної чутливості системи.
Що вибрати — VPS чи dedicated для цього завдання?
Для розгортання PocketBase у переважній більшості випадків достатньо VPS. PocketBase дуже ефективний і не вимагає величезних ресурсів. Dedicated сервери потрібні лише для дуже великих проєктів з високим навантаженням (мільйони запитів на день), специфічними вимогами до ізоляції або коли на сервері одночасно запускається безліч інших ресурсоємних сервісів. Для більшості розробників та малих/середніх бізнесів VPS буде оптимальним вибором за співвідношенням ціна/продуктивність.
Як оновити PocketBase до нової версії?
Оновлення PocketBase виконується вручну. Вам потрібно зупинити сервіс PocketBase (sudo systemctl stop pocketbase), завантажити нову версію виконуваного файлу з офіційного GitHub-репозиторію, замінити старий файл у /opt/pocketbase/ новим, а потім знову запустити сервіс (sudo systemctl start pocketbase). Завжди робіть резервну копію папки pb_data перед оновленням на випадок непередбачених проблем із сумісністю.
Де зберігаються дані PocketBase?
Усі дані PocketBase за замовчуванням зберігаються в директорії, зазначеній при запуску з прапором --dir. У нашому випадку це /opt/pocketbase/pb_data/. Всередині цієї директорії ви знайдете файл SQLite бази даних data.db і, якщо ви використовуєте функції зберігання файлів PocketBase, піддиректорію files/.
Як змінити порт, на якому працює PocketBase?
Порт PocketBase можна змінити у файлі сервісу systemd: /etc/systemd/system/pocketbase.service. Знайдіть рядок ExecStart=/opt/pocketbase/pocketbase serve --http "0.0.0.0:8090" --dir "/opt/pocketbase/pb_data" та змініть 8090 на бажаний порт. Після збереження файлу виконайте sudo systemctl daemon-reload та sudo systemctl restart pocketbase. Не забудьте також оновити конфігурацію Caddy, якщо ви використовуєте його як зворотний проксі, щоб він вказував на новий порт.
Висновки та наступні кроки
Вітаємо! Ви успішно розгорнули PocketBase на своєму VPS, налаштували безпечний доступ через HTTPS за допомогою Caddy та забезпечили базову систему резервного копіювання. Тепер у вас є потужний, гнучкий і повністю контрольований бекенд для ваших застосунків, що дозволяє швидко створювати та ітерувати ідеї.
Ось кілька наступних кроків, які ви можете зробити для подальшого розвитку вашого проєкту:
- Налаштування кастомного домену: Якщо ви ще не зробили цього, прив'яжіть свій власний домен до VPS та оновіть
Caddyfile, щоб використовувати його для вашого PocketBase-інстансу. - Інтеграція з фронтендом: Почніть розробляти свій веб- або мобільний фронтенд, використовуючи клієнтські SDK PocketBase (JavaScript, Dart/Flutter) або безпосередньо через REST/Realtime API.
- Моніторинг та логування: Налаштуйте систему моніторингу (наприклад, Prometheus + Grafana) для відстеження продуктивності вашого VPS та PocketBase, а також централізоване логування для більш ефективного виявлення та усунення проблем.
- Масштабування: У міру зростання проєкту вивчіть можливості горизонтального масштабування (наприклад, використання реплік SQLite або міграція на більш потужну базу даних, якщо PocketBase додасть таку підтримку в майбутньому) або вертикального масштабування шляхом апгрейду вашого VPS-плану.