boxfuse dev db неправильно настроен

Я только начинаю с boxfuse и, похоже, не могу найти способ подготовить базу данных dev.

В моем boxfuse.yml у меня есть (для раздела базы данных):

database:
  # the name of your JDBC driver
  driverClass: com.mysql.jdbc.Driver

  # the username
  user: root

  # the password
  password: <password>

  # the JDBC URL
  url: jdbc:mysql://10.0.0.84:3306/dmsdb

  # any properties specific to your JDBC driver:
  properties:
    charSet: UTF-8
    hibernate.dialect: org.hibernate.dialect.MySQLInnoDBDialect

  # the maximum amount of time to wait on an empty pool before throwing an exception
  maxWaitForConnection: 1s

  # the SQL query to run when validating a connection's liveness
  validationQuery: "/* MyApplication Health Check */ SELECT 1"

  # the minimum number of connections to keep open
  minSize: 8

  # the maximum number of connections to keep open
  maxSize: 32

  # whether or not idle connections should be validated
  checkConnectionWhileIdle: false

Если я попытаюсь запустить его (boxfuse run), мое приложение не будет работать вообще.

Информация boxfuse производит следующее:

клиент oxfuse v.1.18.7.938 Copyright 2016 Boxfuse GmbH. Все права защищены.

Счет: млр11 (млр11)

Информация о mlr11/dms-сервисе в среде разработчика:

App Type    : Single Instance with Zero Downtime updates
App URL     : http://127.0.0.1:8082
DB Type     : MySQL database
DB URL      : jdbc:mysql://localhost:3306/boxfuse-dev-db
DB Host     : localhost
DB Port     : 3306
DB Database : boxfuse-dev-db
DB User     : boxfuse-dev-db
DB Password : boxfuse-dev-db
DB Status   : available

Что сильно отличается от того, что я ожидал. URL, база данных, пользователь, пароль) не соответствуют моему файлу boxfuse.yml.

Чего мне не хватает Я знаю, это должно быть что-то простое. Я сделал все виды поиска и прочитал документ несколько раз. Я не могу найти, что не так. Любые указатели будут оценены.

1 ответ

Решение

Из файла конфигурации, который вы разместили, я предполагаю, что это приложение dropwizard.

Поскольку ваше приложение Boxfuse было настроено на использование базы данных MySQL, Boxfuse автоматически обеспечивает базу данных в каждой среде при первом развертывании приложения. В вашем случае вы можете увидеть информацию о соединении для этой базы данных в среде разработчика в выводе, который вы публикуете в своем вопросе.

Boxfuse выставляет эти значения (db url, user, password,...) как переменные среды ( https://boxfuse.com/docs/databases) и автоматически настраивает ваш фреймворк (я полагаю, Dropwizard), чтобы использовать их вместо те, которые включены в ваш конфигурационный файл. Это будет сделано путем прохождения -Ddw.database.url=$BOXFUSE_DATABASE_URL -Ddw.database.user=$BOXFUSE_DATABASE_USER -Ddw.database.password=$BOXFUSE_DATABASE_PASSWORD в качестве аргументов для JVM.

Также дважды проверьте в графическом интерфейсе VirtualBox, чтобы ваша установка VirtualBox была полностью функциональной и могла запускать виртуальные машины, и чтобы виртуальная машина Boxfuse Dev и экземпляр вашего приложения были запущены правильно.

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