2017-12-20 3 views
0

Ich erstelle einen Container, in dem einige hsql-Skripts ausgeführt werden sollen (ich bin das Bild, das alle Tabellen/Schemata enthält), sobald der hsql DB-Server gestartet wurde.Ausführen von Standardskripts beim HSQL-Serverstart vom Docker

Ich habe die unten Linie in der entrypoint.sh-Datei, die die Server-Instanz

java ${java_vm_parameters} -cp /opt/hsqldb/hsqldb.jar org.hsqldb.Server -database.0 "file:/opt/database/${hsqldb_database_name} 

ich versucht habe, beginnt meinen Skripte im selben Verzeichnis setzen, wo die * .script/* .log hofft, dass diese Skripts ausgeführt werden, und es hat nicht funktioniert. Jede Hilfe wird geschätzt.

+0

Gibt es Fehler? Irgendwelche Protokolle, die Sie zur Verfügung stellen können? Führen Sie den Befehl von einer tatsächlichen Docker-Exec-Sitzung aus, nicht nur 'docker run' allein –

+0

@ cricket_007 Keine Fehler. Die Skripte werden kopiert, aber die Tabellen werden nicht erstellt. –

+0

@ cricket_007 Ich bin sicher, wenn das sogar eine korrekte Vorgehensweise ist –

Antwort

1

Sie müssen eine HSQLDB-Datenbank mit dem Namen hsqldb_database_name erstellen und Ihre SQL-Skripts mit einem Tool wie SqlFile (im Lieferumfang von HSQLDB) für diese Datenbank ausführen. Sie legen dann die .script- und andere Dateien für diese Datenbank in das Verzeichnis, bevor Sie den Server starten.

Verwandte Themen