프로젝트는 (spring mybatis oracle)
Docker는 가상머신 아래에 설치되어 있고, jdbc로 연결된 데이터베이스는 다른 리눅스 물리머신에 설치되어 있어서 로컬 테스트는 통과할 수 있지만 가상머신에서는 이렇습니다. docker 환경에서 오류가 보고됩니다. 이유는 무엇입니까?
오류 메시지는 다음과 같습니다.
데이터베이스 쿼리 오류 원인: org.springframework.jdbc.CannotGetJdbcConnectionException: JDBC 연결을 가져올 수 없습니다. 중첩 예외는 org.apache.commons.dbcp.SQLNestedException입니다. PoolableConnectionFactory를 생성할 수 없습니다. ORA-00604: 재귀 SQL 레벨 1 오류
ORA-01882: 시간대를 찾을 수 없습니다
)
원인: org.springframework.jdbc.CannotGetJdbcConnectionException: JDBC 연결을 가져올 수 없습니다. 중첩 예외는 org.apache.commons.dbcp.SQLNestedException입니다. PoolableConnectionFactory를 생성할 수 없습니다(네트워크 어댑터가 연결을 설정할 수 없습니다)
으아악
Docker 컨테이너가 다른 호스트에 연결해야 하는 경우 실행 시 "--net=host" 옵션을 사용해야 합니다. 이는 컨테이너와 호스트가 네트워크를 공유한다는 의미입니다.
으아아아가상 머신을 NAT 네트워크 모드로 설정해 보세요. 설정 후 가상 머신의 네트워크 동작은 호스트 머신과 유사하여 외부 네트워크와 호스트 머신이 위치한 LAN에 액세스합니다.