Установка PostgreSQL на свой сервер или в облаке: термины и чек-лист
Подробности, цифры, термины и чек-лист по теме «Установка PostgreSQL на свой сервер или в облаке». Страница справочника целиком: Установка PostgreSQL на сервер.
Коротко о теме
Установка PostgreSQL на VPS: пакеты Ubuntu или образ Docker, настройка shared_buffers, закрытый файрволом доступ и управляемая база от 790 ₽.
Подробности по разделам
Где запускать PostgreSQL: свой VPS или управляемая база
Управляемая база нужна там, где потеря данных дороже месяца подписки. Внутренний трафик внутри приватной сети провайдера бесплатный, так что приложение и база могут жить на разных машинах.
PostgreSQL в Docker: compose-файл и том данных
Адрес 127.0.0.1 перед портом не даёт Docker открыть базу всему интернету. Образ не обновляет данные при смене основной версии: заменить postgres:17 на postgres:18 нельзя, нужны дамп и восстановление или pg_upgrade.
Сколько памяти нужно PostgreSQL и что в ней менять
Четыре ответа про данные и нагрузку, калькулятор подберёт конфигурацию
Как открыть PostgreSQL по сети и не открыть его всем
Если нужен прямой доступ, меняются три вещи: Для контейнера правило ufw не поможет: Docker публикует порты в обход него, поэтому привязка 127.0.0.1:5432 в compose-файле обязательна. Если приложение стоит на другой машине того же провайдера, подключайтесь по внутреннему адресу: трафик в приватной сети бесплатный.
Резервные копии PostgreSQL: pg_dump и автокопии базы
У управляемой базы автоматические копии включаются при создании и считаются по объёму: 6 ₽ в месяц за каждый ГБ. Своя схема хранения и проверки восстановления описана на странице сервер для бэкапов. Копия, которую ни разу не восстанавливали, не копия Раз в квартал разворачивайте дамп на тестовой машине и проверяйте, что таблицы приложения на месте.
Ключевые цифры
- Подключите именованный том к /var/lib/postgresql (для версии 18 и новее) и зафиксируйте основную версию в теге образа.
- В Debian и Ubuntu второй кластер создаёт pg_createcluster с другим портом, например 5433.
- 1С работает с PostgreSQL в сборках от самой 1С и от Postgres Pro, поэтому пакеты из репозитория дистрибутива для неё не берут.
Термины на странице
- PostgreSQL
- PostgreSQL это база данных для приложений с большими объёмами и сложными запросами.
- 1С
- 1С это программы учёта. На сервере их запускают в файловом или клиент-серверном режиме, второй нужен для большой базы и многих пользователей.
- Файрвол
- Файрвол ограничивает, с каких адресов и на какие порты можно подключиться к серверу.
- Debian
- Debian это дистрибутив Linux, на котором основана Ubuntu. Его ценят за стабильность.
- MySQL
- MySQL и MariaDB это базы данных, с которыми работают WordPress, Битрикс и другие популярные CMS.
- Виртуальный хостинг
- Виртуальный хостинг это место для сайта на общем сервере: обслуживание системы берёт на себя провайдер.
- Redis
- Redis это хранилище данных в памяти. Его используют как кеш и очередь задач.
- SSH
- SSH это защищённое подключение к серверу через командную строку. Вход по ключу безопаснее, чем по паролю.
Что проверить
- Выберите конфигурацию по памяти и диску под задачу, процессор обычно вторичен.
- Проверьте тип виртуализации: KVM даёт свою систему и гарантированные ресурсы.
- Уточните, входит ли IPv4 и сколько стоит трафик сверх пакета.
- Храните данные контейнеров в томах.
- Закрепляйте версии образов, а не latest.
- Ограничьте ресурсы контейнеров, чтобы один не съел весь сервер.