2016-04-14 16 views
1

Ich fange gerade mit boxfuse an und kann anscheinend keine Möglichkeit finden, meine dev-Datenbank bereitzustellen.boxfuse dev db nicht ordnungsgemäß bereitgestellt

In meinem boxfuse.yml habe ich (für den Datenbank-Bereich):

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 

Wenn ich versuche es (boxfuse run) läuft, meine Anwendung überhaupt nicht funktioniert.

boxfuse info ergibt folgendes:

oxfuse Client v.1.18.7.938 Urheberrecht 2016 Boxfuse GmbH. Alle Rechte vorbehalten.

Konto: mlr11 (mlr11)

Info über mlr11/dms-Service in der dev Umgebung:

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 

Was als ganz anders ist, was ich erwartet hatte. URL, Datenbank, Benutzer, Passwort) stimmen nicht mit meiner boxfuse.yml überein.

Was ich vermisse. Ich weiß, es muss etwas Einfaches sein. Ich habe alle möglichen Suchen durchgeführt und den Doc ein paar Mal gelesen. Ich kann nicht finden, was falsch ist. Irgendwelche Hinweise werden geschätzt.

Antwort

0

Von der Konfigurationsdatei, die Sie gepostet haben, gehe ich davon aus, dass dies eine Dropwizard-App ist.

Da Ihre Boxfuse-App für die Verwendung einer MySQL-Datenbank konfiguriert wurde, stellt Boxfuse automatisch eine Datenbank in jeder Umgebung bereit, wenn Sie Ihre Anwendung dort zum ersten Mal bereitstellen. In Ihrem Fall können Sie die Verbindungsinformationen für diese Datenbank in der Entwicklungsumgebung in der Ausgabe sehen, die Sie in Ihrer Frage veröffentlichen.

Boxfuse macht diese Werte (db url, user, passwort, ...) als Umgebungsvariablen (https://boxfuse.com/docs/databases#envvars) verfügbar und konfiguriert automatisch Ihr Framework (Dropwizard nehme ich an), um diese anstelle der in Ihrer Konfigurationsdatei enthaltenen zu verwenden. Dies geschieht, indem -Ddw.database.url=$BOXFUSE_DATABASE_URL -Ddw.database.user=$BOXFUSE_DATABASE_USER -Ddw.database.password=$BOXFUSE_DATABASE_PASSWORD als Argumente an die JVM übergeben werden.

Überprüfen Sie auch in der GUI von VirtualBox, dass Ihre VirtualBox-Installation voll funktionsfähig ist und VMs gestartet werden können und sowohl die Boxfuse Dev VM als auch die Instanz Ihrer Anwendung ordnungsgemäß gestartet werden.

+0

Ich habe nur 2 VMs aufgelistet und beide laufen. Ich habe boxfuse-dev-hdd-2016.02.09_mlr11-dms-service und vb-5012d157. Das ist alles, was ich in Oracle VM VirtualBox Manager sehen kann. Ich hatte ursprünglich Probleme mit dem Starten der VMs und musste VT-x aktivieren, damit es funktionierte. Muss ich MySQL Server auf dem Rechner installiert haben, auf dem boxfuse läuft? Es ist derzeit nicht installiert, MySQL läuft derzeit auf einem anderen Computer. – mlr11

+0

Nein. Die Boxfuse Dev VM wird mit vorinstalliertem und vollständig konfiguriertem MySQL ausgeliefert. Bringt Ihre Anwendung eine Ausnahme? Wenn ja, poste es bitte hier. (Sie können die Protokolle mit 'boxfuse logs' abrufen). Welche Version von Dropwizard benutzt du? –

+1

Ich benutze Dropwizard 0.9.1. Ich habe einige Berechtigungen in meiner Datenbank geändert und erhalte jetzt völlig andere Nachrichten. Die, die ich jetzt bekomme, sind vielversprechend ("! Java.sql.SQLWarning: Table 'boxfuse-dev-db.addrstate existiert nicht") und ich weiß, wie man mit ihnen umgeht. Gestern bekam ich Nachrichten über verbindungsbezogene Dinge. Ich werde damit ein bisschen mehr spielen. Jetzt weiß ich dort eine neue Datenbank. Ich werde meine Tabellen erstellen und meine Daten dorthin verschieben. – mlr11

Verwandte Themen