EQVPS

VPS для базы данных PostgreSQL (self-hosted, полный контроль)

Хостинг PostgreSQL на VPS с superuser и целым postgresql.conf — любое расширение (pgvector, PostGIS, TimescaleDB), своя версия, свои бэкапы. Альтернатива managed-Postgres, которую полностью контролируешь. Без KYC, оплата криптой. От $8/мес.

Есть момент, когда managed PostgreSQL перестаёт быть удобным: нужно расширение, которого нет в тарифе, хочется увидеть реальный query plan и настроить work_mem, нужен superuser. Когда хочешь владеть Postgres — конфигом, версией, расширениями, графиком бэкапов — VPS с полным root это честный ответ. Это PostgreSQL-специфичная настройка; для более широкой картины «хостить базу самому» (Postgres vs Redis, где общая машина не годится) смотри общий use-case про базу данных.

Зачем хостить PostgreSQL самому

На своей машине получаешь то, что managed-тарифы выдают по норме:

Если pgvector — причина, по которой ты здесь: Postgres-плюс-pgvector это полноценное векторное хранилище на одной машине — тот же строительный блок за self-hosted RAG-стеком и памятью агента.

Настрой (Ubuntu 24.04, Docker)

# docker-compose.yml — PostgreSQL 16 (+ pgvector via the pgvector image)
services:
  db:
    image: pgvector/pgvector:pg16
    restart: always
    environment:
      POSTGRES_USER: app
      POSTGRES_PASSWORD: change-me-strong
      POSTGRES_DB: app
    command: ["postgres", "-c", "shared_buffers=512MB", "-c", "work_mem=32MB"]
    volumes: ["/srv/pg:/var/lib/postgresql/data"]
    ports: ["127.0.0.1:5432:5432"]   # localhost only; see below to expose safely
docker compose up -d
docker compose exec db psql -U app -c "CREATE EXTENSION IF NOT EXISTS vector;"

Привязанный к 127.0.0.1, он обслуживает приложение на той же машине, ничего не выставляя. Пустить другие серверы — следующий раздел.

Пустить другие серверы — безопасно

Как только другой машине нужна база, меняются две вещи:

  1. Стабильный, маршрутизируемый адресплан с dedicated IPv4 (Small-IP $16, Medium-IP $20). NAT-планы делят исходящий IP, годится для исходящего, но не для роли базы, в которую набираются другие.
  2. Жёстко firewall-ни. Открой 5432 только конкретным клиентским IP, никогда 0.0.0.0/0, и требуй TLS. Открытый Postgres-порт в публичном интернете находят за минуты — закрой через UFW.

Бэкапы — твоя работа

Хостинг значит, что бэкапы на тебе, и правило: делай их до того, как понадобятся. pg_dump по крону для логических бэкапов или WAL-архивирование для point-in-time recovery на всём, что важно. Отгружай дампы с машины и хоть раз протестируй восстановление — бэкап, который ты никогда не восстанавливал, это надежда, а не бэкап. Managed-backups add-on доступен, если не хочешь возиться сам.

Почему EQVPS для PostgreSQL

Общий use-case про базу (обзор Postgres/Redis) → · Self-hosted RAG на масштабе →

Готовы развернуть? Оплата криптой, без KYC — сервер за минуту.

Развернуть →

Частые вопросы

Чем это отличается от вашего общего use-case про базу данных?

Общая страница про базу покрывает всю картину — Postgres или Redis, оразмеривание, когда общая машина не тот инструмент. Эта — конкретно PostgreSQL: superuser, целый postgresql.conf, любое расширение, выбор мажорной версии и запуск pg_dump / WAL-бэкапов по своему графику. Если тебе нужен именно self-hosted Postgres — это глубокая версия; общая страница — обзор.

Какие расширения можно поставить?

Любые — в этом и смысл хостинга. pgvector для эмбеддингов и семантического поиска, PostGIS для геоданных, TimescaleDB для временных рядов, pg_cron, pg_stat_statements. Managed-тарифы часто ограничивают список расширений или прячут за более высокий план; с superuser на своей машине ставишь что нужно нагрузке.

Сколько RAM нужно PostgreSQL?

Для базы одного приложения рабочий набор 1.7–2 ГБ реалистичен, так что Small ($8/мес) подходит. Больше приложений, реальная продакшн-конкурентность или большой pgvector-индекс двигают к Medium ($12) и выше. Настрой shared_buffers и work_mem под машину; эта настройка — одна из главных причин хостить самому.

Как другие серверы подключаются безопасно?

Привяжи Postgres к нужному интерфейсу, открой 5432 только конкретным IP, которым нужно (никогда 0.0.0.0/0), требуй TLS и возьми план с dedicated IPv4, чтобы адрес был стабильным и маршрутизируемым. Если база обслуживает приложение на той же машине — держи на localhost и не выставляй ничего.

Требуете документ или карту?

Нет. Имейл для регистрации, оплата в USDC или USDT. Root примерно за минуту, потом Postgres в паре команд.

Комментарии

Пока нет комментариев. Будьте первым.

Оставить комментарий

Комментарии проходят модерацию перед публикацией.