From 76e099150d522bab0421d9188e399fcab34d1ce4 Mon Sep 17 00:00:00 2001 From: naeel Date: Tue, 17 Feb 2026 08:32:20 +0300 Subject: [PATCH] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=B8=D1=82?= =?UTF-8?q?=D1=8C=20README.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 49 ++++++++++++------------------------------------- 1 file changed, 12 insertions(+), 37 deletions(-) diff --git a/README.md b/README.md index 37af4b2..109f5ac 100644 --- a/README.md +++ b/README.md @@ -1,41 +1,16 @@ -Тестовая обкатка работоспособности Lucee с БД -============================================== +# Nubes Lucee CRUD Demo -Упрощенный вариант без создания БД и таблиц - проверим только коннект +Демонстрационное приложение для облачной платформы Nubes, демонстрирующее интеграцию Lucee (Tomcat/CFML) и PostgreSQL. -*Проходим ряд этапов* +### Функционал +- Динамическая конфигурация DataSource через переменные окружения Terraform. +- Полный цикл CRUD (Create, Read, Update, Delete) для таблицы `nubes_test_table`. +- Автоматическая инициализация схемы данных при запуске приложения. -1) Разворачиваем PostgreSQL -2) Подключаемся к ней и делаем +### Развертывание +Приложение разворачивается через Terraform ресурс `nubes_lucee`. Все параметры подключения к базе данных передаются через `json_env` с префиксом `testds_`. -```sh -ALTER SYSTEM SET password_encryption = 'scram-sha-256'; -SELECT pg_reload_conf(); - -CREATE USER myuser WITH PASSWORD 'password12345'; -CREATE DATABASE mydatabase; -ALTER DATABASE mydatabase OWNER TO myuser; -ALTER DATABASE mydatabase SET search_path to mydatabase; -``` - -``` -3) Находим предварительно LUCEE где можно использовать -```sh -CommandBox> repl -CFSCRIPT-REPL: getInstance('PasswordManager@lucee-password-util').encryptDataSource('password12345') -``` -Получаем hash и далее используем в передаче CFM: -Пример CFM ниже -```sh -{ - "testds_class": "org.postgresql.Driver", - "testds_bundleName": "org.postgresql.jdbc", - "testds_bundleVersion": "42.6.0", - "testds_connectionString": "jdbc:postgresql://postgresql-cl2vzaytsev1.postgresql-cl2vzaytsev1.svc.k8s-2.ext.nubes.ru:5432/mydatabase", - "testds_username": "myuser", - "testds_password": "encrypted:6e97c7d3441f1b393be2e74a1dbc8e43f88a92be270de6f7405ffce85fd52b1e489643ae147ca352", - "testds_connectionLimit": "5", - "testds_liveTimeout": "15", - "testds_validate": "false" -} -``` +### Стек +- **App:** Lucee 5.4 +- **DB:** PostgreSQL +- **Infra:** Terraform, Kubernetes (Nubes Realm)