मैं मैं कुछ कोड, बनाया गया है और उपयोग करते हुए मेरे वसा जार शुरू कर दिया WildFly Swarm Project Generator का उपयोग कर KeyCloak सर्वर के साथ छोटे Wildfly Swarm आवेदन बनाया:डोकर छवि पर KeyCloak साथ Wildfly झुंड चल रहा है
java -jar -Dswarm.port.offset=100 login-service-swarm.jar
बाद एप्लिकेशन मैं नए दायरे उपयोगकर्ताओं को नहीं जोड़ा बनाया देखें आदि। मैंने देखा कि keycloak ने मेरे लक्षित फ़ोल्डरों में 3 फाइलें बनाई हैं। उन फ़ाइलों को जहां:
- keycloak.h2.db
- keycloak.lock.db
- keycloak.trace.db
तब मैं डोकर चित्र बनाने और स्थानीय डोकर में यह चलाने का फैसला किया पर्यावरण। इसलिए मैं डोकर फ़ाइल बनाई:
FROM java:openjdk-8-jdk
ADD login-service-swarm.jar /opt/login-service-swarm.jar
ADD keycloak.h2.db /opt/keycloak.h2.db
ADD keycloak.lock.db /opt/keycloak.lock.db
ADD keycloak.trace.db /opt/keycloak.trace.db
EXPOSE 8180
ENTRYPOINT ["java", "-jar", "-Dswarm.port.offset=100", "/opt/login-service-swarm.jar"]
निर्मित छवि का उपयोग कर:
docker build -f Dockerfile -t login-service-swarm-v1 .
और छवि मेरी डोकर छवि सूची में दिखाई देता है:
:C:\Work\Java\login-service\docker>docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
login-service-swarm-v1 latest 710cddc59623 About a minute ago 790 MB
<none> <none> 100c0ee60f25 3 hours ago 779 MB
demo latest 03d12d49ba5e 4 hours ago 760 MB
java openjdk-8-jdk d23bdf5b1b1b 5 months ago 643 MB
तो मैं इसे का उपयोग शुरू कर दिया
docker run -p 8180:8180 login-service-swarm-v1
और यह ठीक दिख रहा था लेकिन जब मैं जाता हूं स्थानीयहोस्ट में: 8180/auth और लॉगिन करने का प्रयास करें मुझे गलत उपयोगकर्ता नाम और पासवर्ड संदेश मिलता है इसलिए मैं keycloak में लॉगिन करने में असमर्थ हूं। तो मुझे आश्चर्य है कि यह क्यों है? क्योंकि मैं डॉकर छवि में कीक्लोकैक डेटाबेस फ़ाइलों को शामिल करता हूं और यदि मैं निम्न आदेश चलाता हूं तो आप देख सकते हैं कि सभी फाइलें अपेक्षित हैं।
PS C:\> docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
8bb4bdb3945e login-service-swarm-v1 "java -jar -Dswarm..." 2 minutes ago Up 2 minutes 0.0.0.0:8180->8180/tcp blissful_knuth
PS C:\> docker exec -it 8bb4bdb3945e bash
[email protected]:/# ls
bin boot dev etc home keycloak.h2.db keycloak.lock.db keycloak.trace.db lib lib64 media mnt opt proc root run sbin srv sys tmp usr var
[email protected]:/# cd opt
[email protected]:/opt# ls
keycloak.h2.db keycloak.lock.db keycloak.trace.db login-service-swarm.jar
तो कैच कहां है ??
क्या लॉगिन-सेवा-झुंड कुंजीक्लोक सर्वर या कुंजीक्लोक द्वारा सुरक्षित माइक्रोस्कोयर होने का मतलब है? यह – Ken
@ केन पर मुझे पूरी तरह से स्पष्ट नहीं है: लॉगिन-सेवा-स्वर्ग एक कीक्लोक सर्वर – Kiki