2017-05-11 3 views
1

Wie kann ich enabled = "true" auf der Datenquelle standalone.xml des OpenShift v3 Wildfly Containers wie unten setzen.Was ist die Umgebungsvariable <OPENSHIFT_MYSQL_ENABLED> in openshift v3?

<datasource jndi-name="java:jboss/datasources/MySQLDS" enabled="true" use-java-context="true" pool-name="MySQLDS" use-ccm="true"> 

Ich legte die OPENSHIFT_MYSQL_ENABLED Umgebungsvariable auf "true", aber nichts happended.


Die Antwort Referenzstandort ist die unter URL:

https://developer.jboss.org/wiki/DataserviceBuilderOnOpenShiftV3Online

Antwort

0

ich mit dem gleichen Problem zu tun war: die Umgebungsvariable OPENSHIFT_MYSQL_ENABLED durch Variablensubstitution Prozess ignoriert wird, also musste ich aktivieren die Datenquelle mit bloßen Händen, und das ist, was ich tat: (ich werde Sie die OC-Tools auf Ihrem System installiert haben, anzunehmen)

    OC 0
  1. log in: oc login
  2. Liste alle Hülsen und die Wildfly Beispiel finden: oc get pods
  3. geben Sie die SSH-Konsole des Containers: oc rsh <<pod-name>>
  4. bearbeiten die standalone.xml Datei vi /wildfly/standalone/configuration/standalone.xml
  5. Suche nach dem Wort "Datenquelle" durch Eingabe von /datasource auf vi Editor dann drücken Sie die Eingabetaste
  6. finden Sie das Attribut "aktiviert" Ihrer Datenquelle und aktualisieren Sie ihren Wert von false bis true (um dies zu tun, drücken Sie i, um zu gehen vi Einfügemodus)
  7. speichern Sie die Datei durch esc drücken dann :x

Ich bin Openshift Community Edition verwenden, so dass der Behälter neu zu starten ist immer ein Streit: es dauert eine sehr lange Zeit zur Verfügung stehenden Ressourcen zu finden (Speicher und CPU) und starten Sie den Server erneut. Die Datenquelle wird jedoch erst aktiviert, wenn Sie den Server neu starten. Dazu müssen Sie den Container nicht neu starten. Laden Sie WildFly einfach mit den Befehlszeilentools jboss-cli.sh neu. (Ich habe nicht versucht, den Prozess zu beenden und es erneut zu starten, also wenn du es versuchst, sag bitte Bescheid, wenn es funktioniert). Die folgenden Schritte sollten auf dem Container-Terminal unter Verwendung von oc rsh <<podname>> oder mithilfe des Terminals in der Webkonsole ausgeführt werden.

  1. Geben Sie Jboss-cli mit dem Befehl /wildfly/bin/jboss-cli.sh
  2. Typ connect in die Wildfly Konsole anmelden, werden Sie für Benutzer und Passwort gefragt. Wenn Sie keine Zugangsdaten haben, beenden Sie diese Konsole und erstellen Sie eine Management Benutzer durch das Skript ausführen /wildfly/bin/add-user.sh
  3. Ihre Datenquelleneigenschaften, indem Sie die data-source read-resource --name=<<YOUR_DATASOURCE_NAME>> --include-runtime=true --recursive=true eingeben und folgen auf der „freigegeben“ Eigentum.
  4. Wenn Ihre Datenquelle deaktiviert ist, sollten Sie sie aktivieren, indem Sie den Befehl data-source enable --name=<<YOUR_DATASOURCE_NAME>>
  5. eingeben, um WildFly neu zu laden, indem Sie den Befehl reload eingeben. Sobald WildFly neu gestartet wird, müssen Sie auf jboss-cli.sh zugreifen und sich erneut bei der Konsole anmelden.
  6. Testen Sie Ihre Datenquellenverbindung mit dem Befehl data-source test-connection-in-pool --name=<<YOUR_DATASOURCE_NAME>>. Wenn die Befehlsausgabe true war, ist Ihre Datenquelle betriebsbereit.

Openshift v3 basiert auf Docker Containern, daher habe ich Angst, wenn Sie den Container neu starten, wird diese Konfiguration wahrscheinlich verloren gehen. Die am besten geeignete Lösung wäre, diese Aktionen in das Skript von Docker aufzunehmen, von dem ich noch nicht weiß, wie es zusammen mit der OpenShift-Plattform funktioniert.

Hoffe es hilft!

Verwandte Themen