Переменная конфигурации источника данных pax jdbc

Я использую подключенный экземпляр Mycker Docker с моим контейнером докера, который содержит экземпляр Karaf 4, настроенный с источником данных Pax JDBC.

Моя проблема в том, что мой jdbc url зависит от некоторых переменных окружения, установленных docker (поскольку IP-адрес контейнера mysql не всегда одинаков). Переменная IP-адреса MYSQL_PORT_3306_TCP_ADDR,

Я пытался начать караф с -DMYSQL_PORT_3306_TCP_ADDR=XXX.XXX.XXX.XXX и настроить мой источник данных с помощью файла конфигурации (etc/org.ops4j.datasource.mydb.cfg), который будет содержать:

url=jdbc:mysql://${mysql.port.3306.tcp.addr}:3306/mydb

но смотря на сервис: список в карафе вижу

url = jdbc:mysql://:3306/pandoradb

поэтому переменная явно не используется.

Есть ли способ сделать то, что я хочу?

Лучший.

1 ответ

Я наконец нашел решение!

Я не знаю, почему я пытался использовать ${mysql.port.3306.tcp.addr} переменная в моем conf.... использование правильной переменной правильно интерпретируется:

url=jdbc:mysql://${MYSQL_PORT_3306_TCP_ADDR}:3306/mydb

Лучший.

Другие вопросы по тегам