- Notifications
You must be signed in to change notification settings - Fork80
Oracle Database & APEX Developer Docker Image
License
Dani3lSun/docker-db-apex-dev
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
This Docker Image contains the following:
- Oracle Linux 7.9
- Oracle Database 12.2 / 18.3 / 19.3 Enterprise Edition with non-CDB architecture
- Oracle APEX 20.2
- Oracle ORDS 20.3
- Oracle SQLcl 20.3
- Apache Tomcat 8.5.60
- AdoptOpenJDK 11.0.9.1+1
- OraOpenSource Logger 3.1.1
- OraOpenSource OOS Utils 1.0.1
- APEX Office Print 20.x (Cloud Package)
- APEX Media Extension 20.x (Cloud Package)
- Swagger-UI 3.x
Complete the following steps to create a new container:
- Clone or Download the Github Repository to your local Machine
git clone https://github.com/Dani3lSun/docker-db-apex-dev.git
- Download missing Software Components
Thus you have to agree to the License Agreement of Oracle for parts of this Docker Image, you have to download the Install Files by your own.You can take the direct Download Links fromdownload_urls.txt infiles directory.
Direct Links:
- Oracle Database 12.2.0.1 EE
- Oracle Database 18.3 EE
- Oracle Database 19.3 EE
- Oracle APEX 20.2
- Oracle ORDS 20.3
- Oracle SQLcl 20.3
- Apache Tomcat 8.5.60
- AdoptOpenJDK 11.0.9.1+1 - Linux x64 tar.gz
- OraOpenSource Logger 3.1.1
- OraOpenSource OOS Utils 1.0.1
- APEX Office Print 20.x (Login and download Cloud Package)
- APEX Media Extension 20.x (Login and download Cloud Package)
- Swagger-UI v3.x
- GOSU - Docker SU Fix
Place all downloaded files in thefilesdirectory!
Note: You only need to download one Oracle Database version :) After that you will configure the version you downloaded by editing the Dockerfile
- Customize some settings to reflect your needs (optional)
You can change some Environment Variables directly in theDockerfile:
INSTALL_APEX=true# Whether install Oracle APEX (Oracle ORDS / Apache Tomcat) or NotINSTALL_SQLCL=true# Whether install Oracle SQLCL or NotINSTALL_SQLDEVWEB=true# Whether to enable SQL Developer Web which is part of ORDS >= 19.4INSTALL_LOGGER=true# Whether install OraOpenSource Logger or NotINSTALL_OOSUTILS=true# Whether install OraOpenSource OOS Utils or NotINSTALL_AOP=true# Whether install APEX Office Print (AOP) or Not (Cloud Package)INSTALL_AME=true# Whether install APEX Media Extension (AME) or Not (Cloud Package)INSTALL_SWAGGER=true# Whether install Swagger-UI for REST docs or NotINSTALL_CA_CERTS_WALLET=true# Whether to install an instance wide APEX SSL Wallet containing all valid public root CA certificatesDBCA_TOTAL_MEMORY=2048# Memory Size of DatabaseORACLE_SID=orcl# SID of Oracle DatabaseSERVICE_NAME=orcl# SERVICE_NAME of Oracle DatabaseDB_INSTALL_VERSION=19# Database version to install, 12 or 18 or 19ORACLE_BASE=/u01/app/oracle# Path to ORACLE_BASE DirectoryORACLE_HOME12=/u01/app/oracle/product/12.2.0.1/dbhome# Path to ORACLE_HOME Directory of 12.2 databaseORACLE_HOME18=/u01/app/oracle/product/18.0.0/dbhome# Path to ORACLE_HOME Directory of 18.3 databaseORACLE_HOME19=/u01/app/oracle/product/19.0.0/dbhome# Path to ORACLE_HOME Directory of 19.3 databaseORACLE_INVENTORY=/u01/app/oraInventory# Path to ORACLE_INVENTORY DirectoryPASS=oracle# Password of all Database Users (like SYS, APEX_PUBLIC_USER ...), Tomcat Admin and SSHORDS_HOME=/u01/ords# Path to ORDS_HOME DirectoryJAVA_HOME=/opt/java# Path to JAVA_HOME DirectoryTOMCAT_HOME=/opt/tomcat# Path to TOMCAT_HOME DirectoryAPEX_PASS=OrclAPEX1999!# Admin Password of Oracle APEX Web Login (Caution: Oracle APEX Password Policy)APEX_ADDITIONAL_LANG=# Additional Language of APEX, blank to only install English (e.g de, es, fr, it, ja, ko, pt-br, zh-cn, zh-tw)APEX_PATCH_SET_BUNDLE_FILE=# Additional file name of the APEX Patch Set Bundle zip file (e.g. p32006852_2020_Generic.zip), file should be put into "files" directoryTIME_ZONE=UTC# Timezone of your favorite Location (Europe/Berlin, UTC, US/Eastern, ...) --> Only Linux zoneinfo supported
- Build the Docker Image
cd /path/to/docker-db-apex-devdocker build -t<your-docker-image-name>.# e.gdocker build -t db-apex-dev-image.
Note: Please be sure to have enough disk space left. Building this image needs around 40-50GB of free space. The successfully built image has a size of 15-16GB
- Run the Docker Container
docker run -d --name<your-docker-container-name> -p<local-ssh-port>:22 -p<local-http-port>:8080 -p<local-db-listener-port>:1521 -v /dev/shm --tmpfs /dev/shm:rw,nosuid,nodev,exec,size=2g<your-docker-image-name># e.gdocker run -d --name db-apex-dev-container -p 2222:22 -p 8080:8080 -p 1521:1521 -v /dev/shm --tmpfs /dev/shm:rw,nosuid,nodev,exec,size=2g db-apex-dev-image
Note: /dev/shm should be equal the size of allocated Memory to the Database. /dev/shm must also be mounted as tmpfs.
- Start/Stop of Docker Container
docker start<your-docker-container-name>docker stop<your-docker-container-name># e.gdocker start db-apex-dev-containerdocker stop db-apex-dev-container
For this Docker Run Example and theDefault Environment Variables (Step 3):
docker run -d --name db-apex-dev-container -p 2222:22 -p 8080:8080 -p 1521:1521 -v /dev/shm --tmpfs /dev/shm:rw,nosuid,nodev,exec,size=2g db-apex-dev-image
Property | Value |
---|---|
Workspace | INTERNAL |
User | ADMIN |
Password | OrclAPEX1999! |
If APEX Office Print is installed (INSTALL_AOP=true)
Property | Value |
---|---|
Workspace | AOP |
User | ADMIN |
Password | OrclAPEX1999! |
If SQL Developer Web is enabled (INSTALL_SQLDEVWEB=true)
http://localhost:8080/ords/sql-developer
Property | Value |
---|---|
User | SDW_ADMIN |
Password | oracle |
To access the database e.g. from SQL Developer you configure the following properties:
Property | Value |
---|---|
Hostname | localhost |
Port | 1521 |
SID | orcl |
Service | orcl |
The configured user with their credentials are:
User | Password |
---|---|
system | oracle |
sys | oracle |
apex_listener | oracle |
apex_rest_public_user | oracle |
apex_public_user | oracle |
logger_user | oracle |
oosutils_user | oracle |
aop | oracle |
ame | oracle |
sdw_admin | oracle |
Use the following connect string to connect as SYSTEM via SQL*Plus or SQLcl:system/oracle@localhost/orcl
To access the Docker Container via SSH:ssh root@localhost -p 2222
User | Password |
---|---|
root | oracle |
oracle | oracle |
If you want to use SSH without a Password but rather with PubKey Authentication you have the place aauthorized_keys file in thefiles directory before build.
This Dockerfile is based on the following work:
- Philipp Salvisberg's GitHub ProjectPhilippSalvisberg/docker-oracle12ee
- Andrzej Raczkowski's GitHub Projectaraczkowski/docker-oracle-apex-ords
MIT
SeeOracle Database Licensing Information User Manual regarding Oracle Database licenses.
About
Oracle Database & APEX Developer Docker Image
Topics
Resources
License
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Releases
Packages0
Uh oh!
There was an error while loading.Please reload this page.
Contributors3
Uh oh!
There was an error while loading.Please reload this page.