2026-03-25 11:06:18 +00:00
2026-03-25 11:06:18 +00:00
2026-03-25 10:49:01 +00:00
2026-03-25 10:15:53 +00:00

Установка PostgreSQL for 1C 18 на Debian 13 одним запуском

В комплекте:

  • install_pg1c.sh — основной установочный скрипт
  • env.example — пример файла .env со всеми настройками и пояснениями на русском
  • .env — минимальный рабочий вариант без комментариев

Скрипт автоматизирует официальный процесс установки Postgres Pro for 1C 18 по вашей инструкции:

  • добавляет репозиторий через vendor-скрипт pgpro-repo-add.sh
  • ставит пакет в режиме standalone или parallel
  • включает и запускает systemd-сервис
  • создает или обновляет пользователя PostgreSQL
  • при необходимости создает базу данных
  • при необходимости автоматически правит pg_hba.conf, чтобы логин работал по паролю, а не упирался в peer

Что нужно

  • Debian 13
  • доступ root
  • интернет-доступ до репозитория Postgres Pro
  • git, если хотите сначала стянуть готовые файлы из открытого репозитория

Вариант 1. ZIP архив

Скачиваем ZIP архив репозитория:

wget https://git.ext.flamy.studio/flamy_preview/pg18-1C_for_deb13/archive/main.zip -O pg18-1C_for_deb13.zip
unzip pg18-1C_for_deb13.zip
cd pg18-1c_for_deb13
chmod +x install_pg1c.sh
sudo ./install_pg1c.sh

Вариант 2. Стянуть готовый комплект из открытого репозитория

Открытый репозиторий с файлами проекта:

https://git.ext.flamy.studio/flamy_preview/pg18-1C_for_deb13

Стянуть через git

git clone https://git.ext.flamy.studio/flamy_preview/pg18-1C_for_deb13.git
cd pg18-1C_for_deb13
chmod +x install_pg1c.sh
sudo ./install_pg1c.sh

Подготовка .env

Если нужен полный шаблон с пояснениями

cp env.example .env
nano .env

Если нужен минимальный рабочий .env без комментариев

cp .env .env.local
nano .env.local
mv .env.local .env

Либо просто используйте уже готовый .env, если значения вам подходят.

Что настроить в .env

Обязательно проверьте:

  • INSTALL_MODE
  • PG_ADMIN_USER
  • PG_ADMIN_PASSWORD
  • PG_CREATE_DB
  • PG_DB_NAME
  • ENFORCE_PASSWORD_AUTH
  • PGPRO_REPO_ADD_URL
  • PGPRO_REPO_SCRIPT_NAME

Режимы установки

1) Если это единственный Postgres на сервере

INSTALL_MODE=standalone

Ставится пакет:

postgrespro-1c-18

2) Если на сервере уже есть другой Postgres

INSTALL_MODE=parallel

Ставится пакет:

postgrespro-1c-18-contrib

После этого скрипт сам вызывает initdb, включает сервис и запускает его.

Про аутентификацию

По умолчанию на Linux локальные подключения к PostgreSQL часто идут через peer, из-за чего пароль вроде бы задан, но вход под новым пользователем не работает через локальный сокет.

Во второй версии скрипта это закрыто параметром:

ENFORCE_PASSWORD_AUTH=true

Тогда скрипт:

  • определяет фактический путь к pg_hba.conf
  • делает резервную копию
  • заменяет peer / ident на нужный метод (scram-sha-256 по умолчанию)
  • перезапускает сервис

Рекомендуемые значения:

REPLACE_LOCAL_PEER_WITH=scram-sha-256
REPLACE_HOST_AUTH_WITH=scram-sha-256

Проверки после установки

Статус сервиса:

systemctl status postgrespro-1c-18

Список ролей:

sudo -u postgres /opt/pgpro/1c-18/bin/psql -h /var/run/postgresql -d postgres -c "\\du"

Список баз:

sudo -u postgres /opt/pgpro/1c-18/bin/psql -h /var/run/postgresql -d postgres -c "\\l"

Подключение под созданным пользователем:

/opt/pgpro/1c-18/bin/psql -h 127.0.0.1 -U admin_1c -d appdb -W

Что делает скрипт безопасно

Скрипт старается быть идемпотентным:

  • если репозиторий уже добавлен, повторно не ломает конфигурацию
  • если роль уже существует, обновляет пароль и атрибуты
  • если база уже существует, повторно не создает ее
  • перед правкой pg_hba.conf делает бэкап, если CREATE_HBA_BACKUP=true

Важно

  • Скрипт рассчитан именно на Debian 13.
  • Он использует официальный vendor-скрипт добавления репозитория, а не самодельную схему репозиториев.
  • Если доступ к репозиторию требует логин/пароль, это обрабатывает сам vendor-скрипт Postgres Pro.
  • В открытом репозитории сейчас лежат env, env.example, install_pg1c.sh и README.md, так что его можно использовать как точку входа для развертывания или передачи готового комплекта.

Рекомендуемый порядок файлов в проекте

install_pg1c.sh
env.example
.env
README.md
Description
No description provided
Readme 84 KiB
Languages
Shell 100%