``
1. Prerequisites
2. Building DDErl
2.1 Building On Operating System Level
2.2 Building Using Docker Containers
Building DDErl is only supported for Unix and similar systems. All instructions have been tested with Ubuntu 20.04 (Focal Fossa).
The following software components are required in addition to a Unix operating system:
Component | From Version | Source |
---|---|---|
Erlang | 23.3.1 | https://erlang.org/download/otp_versions_tree.html |
gcc | 10.2.0 | https://gcc.gnu.org/ |
git | 2.31.1 | https://git-scm.com/ |
GNU make | 4.3 | https://www.gnu.org/software/make/ |
rebar3 | V3.14.3 | https://www.rebar3.org/ |
Yarn | 1.22.10 | https://github.com/yarnpkg/yarn |
The build process can either be done directly on the operating system level or based on the DDErl development image. For the former, all the software components mentioned under section 1 must be installed, for the latter they are already pre-installed in the image. In addition, a Docker compose script is available that combines the DDErl development image with an empty Oracle database. This can be used as an easily customizable template.
git clone https://github.com/KonnexionsGmbH/dderl
cd dderl
cd priv/dev
yarn install-build-prod
rebar3 as ui compile
rebar3 compile
bash ./build_fe.sh
The use of DDErl development image makes the build process independent of the host operating system. The only requirement is the installation of Docker Desktop and possibly Docker Compose (Unix operating systems). The following instructions demonstrate how to use the Docker compose script.
This command installs an executable DDErl:
docker-compose up -d
Sample output:
The following processing steps are performed:
- If not already there, download the Oracle database image and create the container
dderl_db_ora
with an Oracle database (currently 19c). - If not yet available, download the Konnexion development image and create the corresponding container
dderl_dev
. - Both containers are assigned to network
dderl_default
. - After the database is ready, the schema
scott
is created with the passwordregit
(only with a new database container). - The repository
https://github.com/KonnexionsGmbH/dderl
is downloaded from Github (only with a new development container). - The frontend to
DDErl
is created (only with a new development container). DDErl
is compiled and started.
docker network create dderl_default
docker create --shm-size 1G --name dderl_db_ora --network dderl_default -p 1521:1521/tcp -e ORACLE_PWD=oracle konnexionsgmbh/db_19_3_ee
docker start dderl_db_ora
Sample output:
docker create --name dderl_dev --network dderl_default -p 8443:8443 -t konnexionsgmbh/dderl_dev:latest
docker start dderl_dev
docker exec -it dderl_dev bash
Sample output:
Inside the development container dderl_dev
the database container dderl_db_ora
can be addressed with the dderl_db_ora
as hostname:
ping dderl_db_ora
sqlplus sys/oracle@dderl_db_ora:1521/orclpdb1 as sysdba
create user scott identified by regit;
grant alter system to scott;
grant create session to scott;
grant unlimited tablespace to scott;
grant create table to scott;
grant create view to scott;
exit
git clone https://github.com/KonnexionsGmbH/dderl
cd dderl
Sample output:
./build_fe.sh
Sample output - start:
Sample output - end:
2.2.2.6 Now you can either execute one of the commands from section 2.1 point 4 or start DDErl directly with rebar3 shell
rebar3 shell
Sample output - start:
Sample output - end:
User: system
Password: change_on_install
Service | orclpdb1 |
Host / IP | ddeerl_db_ora |
Port | 1521 |
User | scott |
Password | regit |