Deploy Oracle in Docker¶
Description (For Oracle EE v12.2):¶
You should have working Docker and Oracle accounts.
Go to this page and follow instructions. You need to follow steps 1.a-1.d steps. For short here they are:
1.a Log in to Docker Store with your Docker credentials.
1.b Search for „oracle database“ and select the Oracle Database Enterprise Edition image.
1.c Click through and accept terms if needed.
1.d View Setup Instructions.
1.d.1 Download image with
docker pull store/oracle/database-enterprise:12.2.0.1
1.d.2 Run container with -P option, it will allocate port to access database outside docker container.
docker run -d -it --name OraDBEE -P store/oracle/database-enterprise:12.2.0.1
Note: type docker ps
to get allocated port, you need PORTS section (or docker port CONTAINER_NAME
), also check that status is healthy
(if not, repeat 1.d.2 - in my case probability to create working container was 50/50 :P).
Assume port is 32771 for farther instructions.
Go inside container, create a user, grant all necessary permissions:
docker exec -it OraDBEE bash -c "source /home/oracle/.bashrc; sqlplus sys/Oradoc_db1@ORCLCDB as sysdba"
...
SQL> alter session set "_ORACLE_SCRIPT"=true;
SQL> CREATE USER user1 IDENTIFIED BY qwerty123;
SQL> GRANT CONNECT, RESOURCE, DBA TO user1;
Check connection and access rights outside container for a new user:
> sqlplus user1/qwerty123@localhost:32771/ORCLCDB.localdomain
Try to create a table, insert some rows, select them, then drop table.
6. Follow Getting started part. Use this user credentials in connect method:
tarantool> c, err = ora.connect({username='user1', password='qwerty123', db='localhost:32771/ORCLCDB.localdomain'})
Troubleshooting¶
If Docker can’t get Oracle image with
docker pull store/oracle/database-enterprise:12.2.0.1
try to login with „docker login“. If still nothing is happening, go to docker store and check license (Terms of Service).