2

I am now working on a docker project with two docker containers - one for the oracle db and the other with a java application.

The container for oracle db is working ok. I used the already built image for oracle and created my tablespaces and users in it.

Commands I used to pull and use the oracle db container is as given below:

docker pull wnameless/oracle-xe-11g

docker run -d -p 49160:22 -p 49161:1521 -e ORACLE_ALLOW_REMOTE=true wnameless/oracle-xe-11g

Now I have my own Java application that interacts with the oracle db and I run it using the command given below:

docker run -it --name mypgm myrepo/oracletesting

It runs an interactive java program that asks for the Oracle DB details and allows users to interact with the DB.

However I could not figure out how I have to specify details such as Driver Name, Connection URL, Username, and Password

The values I gave are as given below:

Driver Name: oracle.jdbc.OracleDriver Connection URL:jdbc:oracle:thin:@localhost:1521:orcl11g Username: imtheuser Password: **********

I dont know whats going wrong where but its not working. I tried giving different inputs for Connection URL after inspecting the docker container ip address as well:

Connection URL: jdbc:oracle:thin:@172.17.0.2:1521:orcl11g

Am I giving the Connection URL and/or the port number correct? Can someone help me out to correctly connect these two containers and to get the project moving?

Thanks for your kind help..

2
  • Must use dockerlinks docs.docker.com/v1.8/userguide/dockerlinks Commented May 25, 2016 at 8:38
  • @abrahamjaison did you solve it? If yes, please provide an answer Commented Sep 24, 2016 at 21:22

2 Answers 2

1

You have to link the containers. The oracle container should have a name.

try the following:

    docker network create my-network # Create a network for containers
    docker run -d -p 49160:22 -p 49161:1521 --network my-network --name oracle-db -e ORACLE_ALLOW_REMOTE=true wnameless/oracle-xe-11g
    docker run -it --network my-network --name mypgm myrepo/oracletesting

Use as connection url to following string jdbc:oracle:thin:@oracle-db:1521:orcl11g

Sign up to request clarification or add additional context in comments.

Comments

0

You can use a domain name in oracle connection string: oracle.dbhost.com, and use a --addhost oracle.dbhost.com:[ip address] when running your app in docker, or configure a dns to resolve the domain name.

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.