Как проверить, работает ли Oracle в Docker? - PullRequest
0 голосов
/ 07 мая 2018

Как видно из названия: как проверить, работает ли Oracle в Docker? Теперь мое приложение пытается создать сеанс Hibernate, и я получаю

ERROR :
ORA-01033: ORACLE initialization or shutdown in progress

Так что я хотел бы, чтобы какая-то проверка здоровья имела только URL. Это возможно? Спасибо!

Ответы [ 2 ]

0 голосов
/ 18 мая 2018

Я закончил с простой проверкой APEX:

while [[ "$(curl -s -o /dev/null -w ''%{http_code}'' db:8080/apex)" != "302" ]]; do sleep 5; done

302 используется, потому что он перенаправляет / apex в / apex / some_stuff.В моем случае db - это имя контейнера с Oracle:

version: '3'
services:
  ...
  * other containers *
  ...
  db:
    image: some/image
    ports:
      - "8383:8080"
      - "1521:1521"

Надеюсь, это кому-нибудь поможет!

0 голосов
/ 07 мая 2018

Вы можете имитировать tnsping в вашем Java-приложении: Как сделать оракул TNSPING с Java?

Если вы не можете изменить приложение, tnsping можно вызвать из скрипта bash - если у вас установлен клиент Oracle. Если вы этого не сделаете, просто создайте простое приложение по ссылке выше и запустите его в сценарии.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...