diff --git a/README.md b/README.md index a9d7499..cfa73a8 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,13 @@ # Установка PostgreSQL for 1C 18 на Debian 13 одним запуском В комплекте: + - `install_pg1c.sh` — основной установочный скрипт - `env.example` — пример файла `.env` со всеми настройками и пояснениями на русском +- `.env` — минимальный рабочий вариант без комментариев + +Скрипт автоматизирует официальный процесс установки Postgres Pro for 1C 18 по вашей инструкции: -Скрипт автоматизирует официальный процесс установки Postgres Pro для 1С 18 по вашей инструкции: - добавляет репозиторий через vendor-скрипт `pgpro-repo-add.sh` - ставит пакет в режиме `standalone` или `parallel` - включает и запускает systemd-сервис @@ -17,25 +20,69 @@ - Debian 13 - доступ `root` - интернет-доступ до репозитория Postgres Pro +- `git`, если хотите сначала стянуть готовые файлы из открытого репозитория -## Быстрый запуск +## Вариант 1. Быстрый запуск из локальных файлов ```bash -cp env.example .env -nano .env chmod +x install_pg1c.sh sudo ./install_pg1c.sh ``` +## Вариант 2. Стянуть готовый комплект из открытого репозитория + +Открытый репозиторий с файлами проекта: + +```text +https://git.ext.flamy.studio/flamy_preview/pg18-1C_for_deb13 +``` + +На странице репозитория доступны файлы `env`, `env.example`, `install_pg1c.sh` и `README.md`, а также стандартные варианты скачивания архива (`ZIP`, `TAR.GZ`, `BUNDLE`). Репозиторий опубликован в Gitea, ветка `main`, и в нем сейчас 1 commit. citeturn437110view0 + +### Стянуть через git + +```bash +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 +``` + +### Или скачать архивом + +Можно скачать архив с той же страницы репозитория кнопкой `Download ZIP` или `Download TAR.GZ`, распаковать и запустить `install_pg1c.sh`. Эти варианты скачивания присутствуют на странице репозитория. citeturn437110view0 + +## Подготовка `.env` + +### Если нужен полный шаблон с пояснениями + +```bash +cp env.example .env +nano .env +``` + +### Если нужен минимальный рабочий `.env` без комментариев + +```bash +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` ## Режимы установки @@ -46,6 +93,7 @@ INSTALL_MODE=standalone ``` Ставится пакет: + ```text postgrespro-1c-18 ``` @@ -57,6 +105,7 @@ INSTALL_MODE=parallel ``` Ставится пакет: + ```text postgrespro-1c-18-contrib ``` @@ -74,6 +123,7 @@ ENFORCE_PASSWORD_AUTH=true ``` Тогда скрипт: + - определяет фактический путь к `pg_hba.conf` - делает резервную копию - заменяет `peer` / `ident` на нужный метод (`scram-sha-256` по умолчанию) @@ -97,13 +147,13 @@ systemctl status postgrespro-1c-18 Список ролей: ```bash -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 "\\du" ``` Список баз: ```bash -sudo -u postgres /opt/pgpro/1c-18/bin/psql -h /var/run/postgresql -d postgres -c "\l" +sudo -u postgres /opt/pgpro/1c-18/bin/psql -h /var/run/postgresql -d postgres -c "\\l" ``` Подключение под созданным пользователем: @@ -115,6 +165,7 @@ sudo -u postgres /opt/pgpro/1c-18/bin/psql -h /var/run/postgresql -d postgres -c ## Что делает скрипт безопасно Скрипт старается быть идемпотентным: + - если репозиторий уже добавлен, повторно не ломает конфигурацию - если роль уже существует, обновляет пароль и атрибуты - если база уже существует, повторно не создает ее @@ -123,8 +174,9 @@ sudo -u postgres /opt/pgpro/1c-18/bin/psql -h /var/run/postgresql -d postgres -c ## Важно - Скрипт рассчитан именно на Debian 13. -- Он использует официальный vendor-скрипт добавления репозитория, а не “самодельную” схему репозиториев. -- Если доступ к репозиторию требует логин/пароль, это обрабатывает сам vendor-скрипт Postgres Pro. В текущей версии ссылки вынесены в `.env`, но учетные данные доступа к репозиторию не дублируются вручную без явной необходимости. +- Он использует официальный vendor-скрипт добавления репозитория, а не самодельную схему репозиториев. +- Если доступ к репозиторию требует логин/пароль, это обрабатывает сам vendor-скрипт Postgres Pro. +- В открытом репозитории сейчас лежат `env`, `env.example`, `install_pg1c.sh` и `README.md`, так что его можно использовать как точку входа для развертывания или передачи готового комплекта. citeturn437110view0 ## Рекомендуемый порядок файлов в проекте