Menu

Docker steps

Domen Dolar

Creating Docker for RASD


0. Prepare all download's to create RASD Docker container

  1. Download latest version of RASD and unzip it to one folder
    https://sourceforge.net/projects/rasd/files/?source=navbar
>mkdir c:/RASDDWNLD  -> unzip the RASD version

+. Download JAVA jre-8u151-linux-x64.tar.gz to the folder
http://www.oracle.com/technetwork/java/javase/downloads/java-archive-javase8-2177648.html

>mkdir c:/dockeru01 -> copy file to this folder

+. Prepare ORDS to import it in Docker container

>mkdir c:/dockeru01/ords/conf and unzip file  C:\RASDDWNLD\RASD_1.0\Installation\ords\config_ords.zip
>mkdir C:/dockeru01/ords      and copy folder C:\RASDDWNLD\RASD_1.0\Installation\ords\ords.3.0.12.263.15.32

change file C:\dockeru01\ords\conf\ords\defaults.xml

<entry key="error.externalPath">/u01/ords/conf/ords/error-pages</entry>

change file C:\dockeru01\ords\conf\ords\standalone\standalone.properties

standalone.doc.root=\\u01\\ords\\conf\\ords\\standalone\\doc_root

change file C:\dockeru01\ords\ords.3.0.12.263.15.32\params\ords_params.properties

db.hostname=
db.port=
db.servicename=
db.sid=
db.username=APEX_PUBLIC_USER
migrate.apex.rest=false
rest.services.apex.add=
rest.services.ords.add=true
schema.tablespace.default=SYSAUX
schema.tablespace.temp=TEMP
standalone.http.port=88
standalone.use.https=false
user.tablespace.default=USERS
user.tablespace.temp=TEMP

+. Set sharing C:\ to Docker
https://rominirani.com/docker-on-windows-mounting-host-directories-d96f3f056a2c

+. Pull empty docker with oracle DB
https://hub.docker.com/r/alexeiled/docker-oracle-xe-11g/

>docker pull alexeiled/docker-oracle-xe-11g

1. Run downloaded Docker

>docker run -d --shm-size=1g -p 8080:8080 -p 1521:1521 -v c:/dockeru01:/data alexeiled/docker-oracle-xe-11g

2. Create RASD in Docker database. Connect to XE database in docker

in your local TNS file (oracle client) check:
XE = (description=
(address=(protocol=tcp)(port=1521)(host=localhost)))
(connect_data=(service=XE))
)
run SQLPLUS from the root folder of unziped RASD application (https://sourceforge.net/p/rasd/wiki/this%20script/)

>cd RASDDWNLD\RASD_1.0\Installation
//pwd will expired in 7days so we need to rechange it
>sqlplus SYSTEM/oracle@XE
>alter user SYSTEM identified by oracle;
>exit
//run RASD script !!! change database_TNS and your_pwd
>sqlplus SYSTEM/oracle@XE @01_createRASD.sql

3. Setting ORDS (Oracle REST Database Services) in Docker to create http acces to RASD application

  1. Set Docker ...
>docker exec -ti conteinerid_of_your_running_docker /bin/bash
// in Docker you set ...
>cd u01
>mkdir jre1.8.0_151
>mkdir ords
>cd ords
>rm -r *
>mkdir conf
>mkdir ords.3.0.12.263.15.32
>cp -R /data/ords/ords.3.0.12.263.15.32/* /u01/ords/ords.3.0.12.263.15.32
>cp -R /data/ords/conf/* /u01/ords/conf
>cp  /data/jre-8u151-linux-x64.tar.gz /u01
>cd ..
>tar xvzf jre-8u151-linux-x64.tar.gz
>rm jre-8u151-linux-x64.tar.gz
  1. Set ORDS config location settings
>export PATH=$PATH:/u01/jre1.8.0_151/bin
>java -Duser.timezone="+2:00" -jar /u01/ords/ords.3.0.12.263.15.32/ords.war configdir /u01/ords/conf/
  1. Add code to start.sh after echo "Oracle started successfully!"
> vi start.sh
export PATH=$PATH:/u01/jre1.8.0_151/bin
java -Duser.timezone="+2:00" -jar /u01/ords/ords.3.0.12.263.15.32/ords.war standalone &

echo "ORDS started"
  1. Add cron to restart database daily

cretae file oracle-xe in /etc/cron.daily

#/bin/sh

/etc/init.d/oracle-xe restart

4. Finish the docker imageid

>docker ps
>docker commit conteinerid
>docker images
>docker tag imageid domendolar/rasd           

Related

Wiki: Installation
Wiki: Welcome

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.