我无法在docker映像中连接oracle db,但我可以通过intellij连接到它。该项目是一个SpringBootMaven项目。以下是关于my application.yml文件的一部分:
datasource:
url: jdbc:oracle:thin:@host_name:port/service_name
username: username
password: password
driver-class-name: oracle.jdbc.driver.OracleDriver
jpa:
hibernate:
ddl-auto: update
show-sql: true
format_sql: true
dialect: org.hibernate.dialect.Oracle10gDialect
通过这种配置,我可以使用ojdbc6.jar连接到oracle。但是,当我尝试使用docker compose以相同的配置运行project时,我无法连接到db。它给出oracle.net.ns.netexception:未知主机指定错误。这是我的docker compose:
database:
container_name: db
image: db
build: ./
ports:
- "8091:8091"
environment:
- SPRING_DATASOURCE_URL=jdbc:oracle:thin:@host_name:port/service_name
- SPRING_DATASOURCE_USERNAME=username
- SPRING_DATASOURCE_PASSWORD=password
- SPRING_DATASOURCE_DRIVER_CLASS_NAME=oracle.jdbc.driver.OracleDriver
- SPRING_JPA_HIBERNATE_DDL_AUTO=update
- SPRING_JPA_HIBERNATE_DIALECT=org.hibernate.dialect.Oracle10gDialect
networks:
- my_network1
我使用主机名而不是ip是否相关?我不知道数据库服务器的ip地址。如果这是一个问题,我会很高兴,如果你告诉我任何方法,以获得ip从主机名,如果可能的话。
为什么docker compose无法连接oracle数据库?我是docker的新手。我有什么遗漏吗?谢谢你的帮助。
暂无答案!
目前还没有任何答案,快来回答吧!