1. Overview
-
Brief overview:
-
Document generation module based on templates, which
-
can handle templates in different formats and inject parameter lists into them, then generate the finished document.
-
The module is designed to generate output documents (PDF, XLSX, HTML, TXT, …) from various template formats with identifiers (TXT, HTML, object, JRXML, …) by inserting the received parameter(s) into the received template.
-
The solution is based on a microservice architecture.
-
-
-
Technologies:
-
Components and their versions:
-
Included local Postgres: 14.8-bullseye
-
Included local Oracle: 21.3.0-xe
-
Liquibase: 4.21
-
The latest final PGTools version: 0.10.0
-
-
2. Schemas
2.1. dookug
2.1.2. Tables:
Field | Type | Default Value | Required? | Description |
---|---|---|---|---|
x__id |
Oracle: VARCHAR2(30 CHAR) Postgres: VARCHAR(30) |
Yes |
PK → unique identifier |
|
template_id |
Oracle: VARCHAR2(30 CHAR) Postgres: VARCHAR(30) |
No |
TEMPLATE identifier |
|
status |
Oracle: VARCHAR2(30 CHAR) Postgres: VARCHAR(30) |
Yes |
Document status |
|
format |
Oracle: VARCHAR2(30 CHAR) Postgres: VARCHAR(30) |
Yes |
Document format |
|
filename |
Oracle: VARCHAR2(100 CHAR) Postgres: VARCHAR(100) |
No |
Document filename |
|
error_message |
Oracle: VARCHAR2(512 CHAR) Postgres: VARCHAR(512) |
No |
Error message during process |
|
storage_type |
Oracle: VARCHAR2(30 CHAR) Postgres: VARCHAR(30) |
Yes |
Storage type |
|
storage_id |
Oracle: VARCHAR2(128 CHAR) Postgres: VARCHAR(128) |
No |
Unique invoice identifier in the calling system |
|
parameters |
Oracle: BLOB Postgres: BYTEA |
No |
Parameter key-value pairs json |
|
parameter_data |
Oracle: BLOB Postgres: BYTEA |
No |
Parameter data structure json |
|
config |
Oracle: CLOB Postgres: TEXT |
No |
Configuration |
|
x__insdate |
TIMESTAMP(6) |
Oracle: sysdate Postgres: now() |
Yes |
Insertion timestamp |
x__insuser |
Oracle: VARCHAR2(30 CHAR) Postgres: VARCHAR(30) |
'0' |
Yes |
Not used, default value 0 |
x__moddate |
TIMESTAMP(6) |
No |
Modification timestamp, null at insertion |
|
x__moduser |
Oracle: VARCHAR2(30 CHAR) Postgres: VARCHAR(30) |
'0' |
No |
Not used, default value 0 |
x__version |
Oracle: NUMBER Postgres: INT |
0 |
Yes |
Change versioning |
Field | Type | Value | Related Field | Referenced Field |
---|---|---|---|---|
pk_document |
primary key |
x__id |
||
pk_document |
unique index |
x__id |
Field | Type | Default Value | Required? | Description |
---|---|---|---|---|
x__id |
Oracle: VARCHAR2(30 CHAR) Postgres: VARCHAR(30) |
Yes |
Generated primary key (PK) |
|
document_id |
Oracle: VARCHAR2(30 CHAR) Postgres: VARCHAR(30) |
Yes |
DOCUMENT unique identifier |
|
content |
Oracle: BLOB Postgres: BYTEA |
Yes |
Document content (gzip) |
|
expiry |
Oracle: TIMESTAMP(6) Postgres: TIMESTAMP(6) |
No |
Expiration date |
|
x__insdate |
timestamp(6) |
Oracle: sysdate Postgres: now() |
Yes |
Insertion timestamp |
x__insuser |
Oracle: VARCHAR2(30 CHAR) Postgres: VARCHAR(30) |
'0' |
Yes |
Not used, default value 0 |
x__moddate |
timestamp(6) |
No |
Modification timestamp, null at insertion |
|
x__moduser |
Oracle: VARCHAR2(30 CHAR) Postgres: VARCHAR(30) |
'0' |
No |
Not used, default value 0 |
x__version |
Oracle: number Postgres: int |
0 |
Yes |
Change versioning |
Field | Type | Value | Related Field | Referenced Field |
---|---|---|---|---|
pk_document_content |
primary key |
x__id |
||
fk_document_content_document |
foreign key constraint |
document_id |
document.x__id |
|
ix_document_content_document_id |
index |
document_id |
||
pk_document_content |
unique index |
x__id |
Field | Type | Default Value | Required? | Description |
---|---|---|---|---|
x__id |
Oracle: VARCHAR2(30 CHAR) Postgres: VARCHAR(30) |
Yes |
Generated primary key (PK) |
|
name |
Oracle: VARCHAR2(255 CHAR) Postgres: VARCHAR(255) |
Yes |
Template name |
|
description |
Oracle: VARCHAR2(1024 CHAR) Postgres: VARCHAR(1024) |
Yes |
Description |
|
template_engine |
Oracle: VARCHAR2(30 CHAR) Postgres: VARCHAR(30) |
Yes |
Template engine. Possible values: HANDLEBARS, NONE |
|
generator_engine |
Oracle: VARCHAR2(30 CHAR) Postgres: VARCHAR(30) |
Yes |
Document generation engine. Possible values: PDF_BOX, NONE |
|
language |
Oracle: VARCHAR2(30 CHAR) Postgres: varchar(30) |
No |
Template language |
|
validity_start |
Oracle: TIMESTAMP(6) Postgres: TIMESTAMP(6) |
Oracle: sysdate Postgres: now() |
Yes |
Validity start |
validity_end |
Oracle: TIMESTAMP(6) Postgres: TIMESTAMP(6) |
No |
Validity end |
|
x__insdate |
timestamp(6) |
Oracle: sysdate Postgres: now() |
Yes |
Insertion timestamp |
x__insuser |
Oracle: VARCHAR2(30 CHAR) Postgres: VARCHAR(30) |
'0' |
Yes |
Not used, default value 0 |
x__moddate |
timestamp(6) |
No |
Modification timestamp, null at insertion |
|
x__moduser |
Oracle: VARCHAR2(30 CHAR) Postgres: VARCHAR(30) |
'0' |
No |
Not used, default value 0 |
x__version |
Oracle: number Postgres: int |
0 |
Yes |
Change versioning |
Field | Type | Value | Related Field | Referenced Field |
---|---|---|---|---|
ck_template_generator_engine |
check constraint |
PDF_BOX, NONE, SAXON |
generator_engine |
|
ck_template_template_engine |
check constraint |
HANDLEBARS, NONE |
template_engine |
|
pk_template |
primary key |
x__id |
||
pk_template |
unique index |
x__id |
Field | Type | Default Value | Required? | Description |
---|---|---|---|---|
x__id |
Oracle: VARCHAR2(30 CHAR) Postgres: VARCHAR(30) |
Yes |
Generated primary key (PK) |
|
key |
Oracle: VARCHAR2(255 CHAR) Postgres: VARCHAR(255) |
Yes |
Template key. For template engine. |
|
description |
Oracle: VARCHAR2(1024 CHAR) Postgres: VARCHAR(1024) |
Yes |
Description |
|
template_engine |
Oracle: VARCHAR2(30 CHAR) Postgres: VARCHAR(30) |
Yes |
Template engine. Possible values: HANDLEBARS, NONE |
|
generator_engine |
Oracle: VARCHAR2(30 CHAR) Postgres: VARCHAR(30) |
Yes |
Document generation engine. Possible values: PDF_BOX, NONE |
|
template_part_type |
Oracle: VARCHAR2(30 CHAR) Postgres: VARCHAR(30) |
Yes |
Template type. Possible values: HEADER, CONTENT, FOOTER, MAIN, OTHER |
|
x__insdate |
timestamp(6) |
Oracle: sysdate Postgres: now() |
Yes |
Insertion timestamp |
x__insuser |
Oracle: VARCHAR2(30 CHAR) Postgres: VARCHAR(30) |
'0' |
Yes |
Not used, default value 0 |
x__moddate |
timestamp(6) |
No |
Modification timestamp, null at insertion |
|
x__moduser |
Oracle: VARCHAR2(30 CHAR) Postgres: VARCHAR(30) |
'0' |
No |
Not used, default value 0 |
x__version |
Oracle: number Postgres: int |
0 |
Yes |
Change versioning |
Field | Type | Value | Related Field | Referenced Field |
---|---|---|---|---|
ck_template_part_generator_engine |
check constraint |
PDF_BOX, NONE |
generator_engine |
|
ck_template_part_template_engine |
check constraint |
HANDLEBARS, NONE |
template_engine |
|
ck_template_part_template_part_type |
check constraint |
HEADER, CONTENT, FOOTER, MAIN, OTHER |
template_part_type |
|
pk_template_part |
primary key |
x__id |
||
pk_template_part |
unique index |
x__id |
Field | Type | Default Value | Required? | Description |
---|---|---|---|---|
x__id |
Oracle: VARCHAR2(30 CHAR) Postgres: VARCHAR(30) |
Yes |
Generated primary key (PK) |
|
template_part_id |
Oracle: VARCHAR2(30 CHAR) Postgres: VARCHAR(30) |
Yes |
TEMPLATE unique identifier |
|
content |
Oracle: BLOB Postgres: BYTEA |
Yes |
Template content |
|
compressed |
Oracle: NUMBER Postgres: INT |
Yes |
Is template content compressed |
|
x__insdate |
timestamp(6) |
Oracle: sysdate Postgres: now() |
Yes |
Insertion timestamp |
x__insuser |
Oracle: VARCHAR2(30 CHAR) Postgres: VARCHAR(30) |
'0' |
Yes |
Not used, default value 0 |
x__moddate |
timestamp(6) |
No |
Modification timestamp, null at insertion |
|
x__moduser |
Oracle: VARCHAR2(30 CHAR) Postgres: VARCHAR(30) |
'0' |
No |
Not used, default value 0 |
x__version |
Oracle: number Postgres: int |
0 |
Yes |
Change versioning |
Field | Type | Value | Related Field | Referenced Field |
---|---|---|---|---|
pk_template_part_content |
primary key |
x__id |
||
uk_template_part_content_template_part_id |
unique index |
template_part_id |
||
fk_template_part_content_template_part |
Foreign key constraint |
template_part_id |
template_part.x__id |
|
pk_template_part_content |
unique index |
x__id |
Field | Type | Default Value | Required? | Description |
---|---|---|---|---|
x__id |
Oracle: VARCHAR2(30 CHAR) Postgres: VARCHAR(30) |
Yes |
Generated primary key (PK) |
|
template_id |
Oracle: VARCHAR2(30 CHAR) Postgres: VARCHAR(30) |
Yes |
TEMPLATE unique identifier |
|
template_part_id |
Oracle: VARCHAR2(30 CHAR) Postgres: VARCHAR(30) |
Yes |
TEMPLATE_PART unique identifier |
|
x__insdate |
timestamp(6) |
Oracle: sysdate Postgres: now() |
Yes |
Insertion timestamp |
x__insuser |
Oracle: VARCHAR2(30 CHAR) Postgres: VARCHAR(30) |
'0' |
Yes |
Not used, default value 0 |
x__moddate |
timestamp(6) |
No |
Modification timestamp, null at insertion |
|
x__moduser |
Oracle: VARCHAR2(30 CHAR) Postgres: VARCHAR(30) |
'0' |
No |
Not used, default value 0 |
x__version |
Oracle: number Postgres: int |
0 |
Yes |
Change versioning |
Field |
Type |
Value |
Related Field |
Referenced Field |
pk_template_template_part |
primary key |
x__id |
||
fk_template_template_part_template |
foreign key constraint |
template_id |
template.x__id |
|
fk_template_template_part_template_part |
foreign key constraint |
template_part_id |
template_part.x__id |
|
ix_template_template_part_template_id |
index |
template_id |
||
ix_template_template_part_template_part_id |
index |
template_part_id |
||
pk_template_template_part |
unique index |
x__id |
2.1.3. Permissions
Users | Permissions |
---|---|
dookug |
SELECT, INSERT, UPDATE, DELETE |
dookug_del |
DELETE, TRUNCATE |
dookug_mod |
INSERT, UPDATE |
dookug_sel |
SELECT |
dookug_full |
SELECT, INSERT, UPDATE, DELETE |
dookug_service |
SELECT, INSERT, UPDATE, DELETE |
Users | Permissions |
---|---|
DOOKUG_WRITE |
INSERT, UPDATE, DELETE |
DOOKUG_READ |
SELECT |
DOOKUG_EXEC |
NOTEEFLY_READ, NOTEEFLY_WRITE |
3. Configurations
-
ENV variables:
-
DOCKER_REPOSITORY: Root location of images (default value: DOCKER_REPOSITORY_).
-
DOCKER_LIQUIBASE_DOOKUG: Indicates the image location (schema1 default value: ${DOCKER_REPOSITORY}/liquibase/modules/dookug_db).
-
DBDWH_IMAGE_VERSION: used version of liquibase, postgres, partman images (default value: 0.10.0)
-
VERSION: Project version, this is set automatically.
-
-
Compose variables:
-
LIQUIBASE_BASE_IMAGE: central, corporate base liquibase image with version, used by dockerfile (default value: DOCKER_REPOSITORY/db-base-liquibase:${DBDWH_IMAGE_VERSION}).
-
liquibase-release/LIQUIBASE_INSTALL_DIR: local liquibase directory, used by dockerfile (schema1 default value: ./liquibase/dookug).
-
LIQUIBASE_INSTALL_COMMON_DIR: local liquibase/common directory, used by dockerfile (default value: ./liquibase/common).
-
-
Before Liquibase variables:
-
S2_SCHEMA_NAME: Step 2 schema name, with default value, can be overridden externally (default value: dookug).
-
CREATE_DATABASE: PostgreSQL DB. If the current DB needs to be embedded in another DB (under a specific schema), this variable prevents an empty DB from being created. Default value is TRUE in the before-liquibase file, can be overridden externally.
-
-
Properties variables:
-
Properties file: File belonging to the given DB that provides data for local db access and maps the liquibase changelog file to the given step compose file.
-
URL: URL of the DB to be installed, by default local DB access is specified, can be overridden externally.
-
Oracle DB: (default value: jdbc:oracle:thin:@module-dookug-oracle:1521/xepdb1).
-
Postgres DB/step1: (default value: jdbc:postgresql://module-dookug-postgredb:5432/postgres).
-
Postgres DB/step2: (default value: _jdbc:postgresql://module-dookug-postgredb:5432/dookug_db).
-
Postgres DB/step3: (default value: jdbc:postgresql://module-dookug-postgredb:5432/postgres).
-
Postgres DB/step4: (default value: _jdbc:postgresql://module-dookug-postgredb:5432/dookug_db).
-
-
USERNAME: Username for the DB to be installed, by default local DB access is specified, can be overridden externally.
-
Oracle DB/step1: (default value: system).
-
Oracle DB/step2: (schema2 default value: dookug).
-
Oracle DB/step4: (schema4 default value: dookug).
-
Postgres DB: (default value: postgres).
-
-
PASSWORD: Password for the DB to be installed, by default local DB access is specified, can be overridden externally.
-
Oracle DB: (default value: developer).
-
Postgres DB: (default value: postgres).
-
-
CHANGELOGFILE: Name of the liquibase changelog file, by default local changelog file access for the given DB step is specified.
-
step1: DB installation, users, permissions, etc. (default value: liquibase-install-step-01.xml).
-
step2: Liquibase installation, DB objects (default value: liquibase-install-step-02.xml).
-
step3: ONLY PostgreSQL - CRON scheduler entry (default value: liquibase-install-step-03.xml).
-
step4: Optional! Default (test/dev) template loading (default value: liquibase-install-step-04.xml).
-
-
4. Installation, Release, Deployment
Local Postgres (click here)
#=====================
#Full install
#=====================
docker run -it --rm \
--network=dookug-local-network \
-e AUTO_INSTALL=postgresql \
icellmobilsoft/dookug_db:1.1.0
#=====================
#Step by step:
#=====================
#---------------------
#STEP1 DB init
#---------------------
docker run -it --rm \
--network=dookug-local-network \
-e AUTO_INSTALL=postgresql \
-e INSTALL_STEP=STEP_1 \
icellmobilsoft/dookug_db:1.1.0 && \
#---------------------
#PG Tools (partman) install:
#---------------------
docker run -it --rm \
--network dookug-local-network \
-e AUTO_INSTALL=postgresql \
-e INSTALL_URL_S1=jdbc:postgresql://module-dookug-postgredb:port_num/postgres \
-e INSTALL_URL_S2=jdbc:postgresql://module-dookug-postgredb:port_num/dookug_db \
--name module-dookug-pg_tools-step-01B \
icellmobilsoft/pg_tools:0.10.0 && \
#---------------------
#STEP2 - Liqui install:
#---------------------
docker run -it --rm \
--network=dookug-local-network \
-e AUTO_INSTALL=postgresql \
-e INSTALL_STEP=STEP_2 \
icellmobilsoft/dookug_db:1.1.0 && \
#---------------------
#STEP3 - register in CRON scheduler:
#---------------------
docker run -it --rm \
--network=dookug-local-network \
-e AUTO_INSTALL=postgresql \
-e INSTALL_STEP=STEP_3 \
icellmobilsoft/dookug_db:1.1.0 && \
#---------------------
#STEP4 - Load default (test/dev) templates:
#---------------------
docker run -it --rm \
--network=dookug-local-network \
-e AUTO_INSTALL=postgresql \
-e INSTALL_STEP=STEP_4 \
icellmobilsoft/dookug_db:1.1.0
-
How "embed" Dookug DB into other "host" DB (install Dookug-db dookug schema into other DB):
Embed Postgres in to other DB locally (click here)
#---------------------
#Postgres and Linux:
#---------------------
# The Step4 in DookuG DB contains loading of default templates, therefore the "embedding" installer script format is different for this DB.
# For all host (parent) DBs, the corresponding environment variables need to be rewritten accordingly.
# If you don't need default templates, then STEP_4 can be omitted.
#---------------------
docker run -it --rm \
--network=host-local-network \
-e AUTO_INSTALL=postgresql \
-e DATABASE_NAME=host_db \
-e INSTALL_URL_S1=jdbc:postgresql://local_host_db-postgredb:port_num/postgres \
-e CREATE_DATABASE=false \
-e INSTALL_STEP=STEP_1 \
-e INSTALL_SCHEMA=dookug \
icellmobilsoft/dookug_db:1.1.0 && \
docker run -it --rm \
--network=host-local-network \
-e AUTO_INSTALL=postgresql \
-e DATABASE_NAME=host_db \
-e INSTALL_URL_S1=jdbc:postgresql://local_host_db-postgredb:port_num/postgres \
-e CREATE_DATABASE=false \
-e INSTALL_URL_S2=jdbc:postgresql://local_host_db-postgredb:port_num/host_db \
-e INSTALL_SCHEMA=dookug \
--name module-dookug-pg_tools-step-01B \
icellmobilsoft/pg_tools:0.10.0 && \
docker run -it --rm \
--network=host-local-network \
-e AUTO_INSTALL=postgresql \
-e DATABASE_NAME=host_db \
-e INSTALL_URL_S2=jdbc:postgresql://local_host_db-postgredb:port_num/host_db \
-e CREATE_DATABASE=false \
-e INSTALL_STEP=STEP_2 \
-e INSTALL_SCHEMA=dookug \
icellmobilsoft/dookug_db:1.1.0 && \
docker run -it --rm \
--network=host-local-network \
-e AUTO_INSTALL=postgresql \
-e DATABASE_NAME=host_db \
-e INSTALL_URL_S3=jdbc:postgresql://local_host_db-postgredb:port_num/postgres \
-e CREATE_DATABASE=false \
-e INSTALL_STEP=STEP_3 \
-e INSTALL_SCHEMA=dookug \
icellmobilsoft/dookug_db:1.1.0
#--------------------------
#This 4th step is needed because the Step4 in Dookug DB contains loading of default templates.
#If you don't need default templates, then STEP_4 can be omitted.
#--------------------------
docker run -it --rm \
--network=host-local-network \
-e AUTO_INSTALL=postgresql \
-e DATABASE_NAME=host_db \
-e INSTALL_URL_S4=jdbc:postgresql://local_host_db-postgredb:port_num/host_db \
-e CREATE_DATABASE=false \
-e INSTALL_STEP=STEP_4 \
-e INSTALL_SCHEMA=dookug \
icellmobilsoft/dookug_db:1.1.0
Local Oracle (click here)
-
Locale Oracle install:
#===================== #Full local install #===================== docker run --rm \ --network dookug-local-network \ -e AUTO_INSTALL=oracle \ icellmobilsoft/dookug_db:1.1.0
#=====================
#Step by step:
#=====================
#---------------------
#STEP1 DB init
#---------------------
docker run --rm \
--network dookug-local-network \
-e AUTO_INSTALL=oracle \
-e INSTALL_STEP=STEP_1 \
icellmobilsoft/dookug_db:1.1.0
#---------------------
#STEP2 - Liqui install:
#---------------------
docker run --rm \
--network dookug-local-network \
-e AUTO_INSTALL=oracle \
-e INSTALL_STEP=STEP_2 \
icellmobilsoft/dookug_db:1.1.0
#---------------------
#STEP4 - Load Default (test/dev) templates - optional:
#---------------------
docker run --rm \
--network dookug-local-network \
-e AUTO_INSTALL=oracle \
-e INSTALL_STEP=STEP_4 \
icellmobilsoft/dookug_db:1.1.0
Embed Oracle into other Oracle DB locally (click here)
#---------------------
#Oracle and Linux:
#---------------------
docker run --rm \
--network host-local-network \
-e AUTO_INSTALL=oracle \
-e INSTALL_URL=jdbc:oracle:thin:@local_host_db-oracle:port_num/xepdb1 \
icellmobilsoft/dookug_db:1.1.0
Server install (click here)
-
The installation process is the same as the local one, however,
-
if the DB is already installed on the server, then STEP1 and/or pg_tools are probably not needed.
-
some environment variables need to be set with different values:
-
USERNAME=user_name
-
PASSWORD=passw
-
INSTALL_URL_S1=jdbc:postgresql://host:port_num/postgres
-
INSTALL_URL_S2=jdbc:postgresql://host:port_num/schema_name
-
INSTALL_URL_S3=jdbc:postgresql://host:port_num/postgres
-
INSTALL_URL_S4=jdbc:postgresql://host:port_num/schema_name
-
There is a possibility to change the password of the Service User from outside: e.g.: -e DB_SERVICE_USER_PASSWORD=new_service_passw, this can only be changed externally on the new installation, so it is only in step 1!
-
-
Other environment variables are explained in the Configuration section.
-
docker run -it --rm \
-e AUTO_INSTALL=postgresql \
-e INSTALL_URL_S1=jdbc:postgresql://host:port_num/postgres \
-e INSTALL_STEP=STEP_1 \
-e USERNAME=postgres \
-e PASSWORD=postgres \
icellmobilsoft/dookug_db:1.1.0 && \
docker run -it --rm \
-e AUTO_INSTALL=postgresql \
-e INSTALL_URL_S1=jdbc:postgresql://host:port_num/postgres \
-e INSTALL_URL_S2=jdbc:postgresql://host:port_num/dookug_db \
--name module-dookug-pg_tools-step-01B \
icellmobilsoft/pg_tools:0.10.0 && \
docker run -it --rm \
-e AUTO_INSTALL=postgresql \
-e INSTALL_URL_S2=jdbc:postgresql://host:port_num/dookug_db \
-e INSTALL_STEP=STEP_2 \
icellmobilsoft/dookug_db:1.1.0
docker run -it --rm \
-e AUTO_INSTALL=postgresql \
-e INSTALL_URL_S3=jdbc:postgresql://host:port_num/postgres \
-e INSTALL_STEP=STEP_3 \
icellmobilsoft/dookug_db:1.1.0
docker run -it --rm \
-e AUTO_INSTALL=postgresql \
-e INSTALL_URL_S4=jdbc:postgresql://host:port_num/dookug_db \
-e INSTALL_STEP=STEP_4 \
icellmobilsoft/dookug_db:1.1.0
#---------------------
#ORACLE server run - in default schema:
#---------------------
docker run --rm \
-e AUTO_INSTALL=oracle \
-e INSTALL_URL_S2=jdbc:oracle:thin:@host:port_num/db_name \
-e CREATE_DATABASE=false \
-e INSTALL_STEP=STEP_2 \
-e INSTALL_USERNAME=vdr_dookug \
-e INSTALL_PASSWORD=passw \
icellmobilsoft/dookug_db:1.1.0
#---------------------
#ORACLE server run - in NOT default schema:
#---------------------
docker run --rm \
-e AUTO_INSTALL=oracle \
-e INSTALL_URL_S2=jdbc:oracle:thin:@host:port_num/db_name \
-e CREATE_DATABASE=false \
-e INSTALL_SCHEMA=vdr_dookug \
-e INSTALL_STEP=STEP_2 \
-e INSTALL_USERNAME=vdr_dookug \
-e INSTALL_PASSWORD=passw \
icellmobilsoft/dookug_db:1.1.0
#---------------------
#If the DookuG DB is already installed on the server, then only the 2. step, liquibase install is needed.
#---------------------
docker run --rm \
-e AUTO_INSTALL=oracle \
-e INSTALL_URL=jdbc:oracle:thin:@host:port/db_name \
-e INSTALL_STEP=2 \
icellmobilsoft/dookug_db:1.1.0
#on windows: the "\" needs to be changed to "`"!
-
optional environment variable, only needed during password change:
-e DB_SERVICE_USER_PASSWORD=<service user passw> \
5. Release notes
-
0.1.0 Changes:
-
Dookug db install
-
Templates install
-
Documentation
-
-
1.0.0 Changes:
-
DATE type has been replaced with Timestamp(6) in Common.dtd file.
-
DKG-228 - Insert a new flexible template into the boards.
-
DKG-217 - Replacing new date types in the boards.
-
DKG-233 - Hash Fix
-
DKG-231 - Convert documentation
-
DKG-238- Load default templates in Step 4.
-
DKG-245 - Improvement of Dookug Vader Installation Error
-
-
1.0.3 Changes:
-
DKG-246 - Template Content Fix
-
DKG-261 - Repair of Readme adoc.
-
DKG-261 - Repair of Install.adoc.
-
-
1.1.0 Changes:
-
DKG-265 - open source changes
-
DKG-297 - Drop validity_start, validity_end cols from template_part_content, drop template_part_content.template_part_id index, change template_part_content.template_part_id index to unique.
-