如何使用docker-compose将docker oracle容器ipjoin到java应用程序中?
下面的代码我使用docker-compose:
integration_test: image: service:1.0.0 volumes: - .:/service links: - oracle_container # used volumes_from as workaround to wait until the following containers to start volumes_from: - oracle_container container_name: integration_test tty: true environment: USER: go command: ["mvn clean install -DskipTests"] oracle_container: image: inmage_name:1.0.0 container_name: oracle_container ports: - "49161:1521"
我想让这两个容器谈谈应用程序 – >甲骨文
两个容器都在同一台机器上运行,我使用下面的jdbcstring通过应用程序连接oracle,
JDBC:预言:瘦:@localhost:49161 / XE
但是iam不能连接oracle和它的抛出SQLRecoverableexception。
根据我的理解,这是在Dockernetworking下,我已经使用链接来连接两个容器。 但这个问题是与连接string,更具体地说,在Oracle容器的IP。
有人可以帮助解决这个问题吗?
你需要使用
jdbc:oracle:thin:@oracle_container:1521/xe
在docker-compose中,每个容器可以到达其他服务名称的容器名称。 你不应该只使用主机端口而是使用容器端口