
これは、将来の自分自身とKeycloak / Wildfly未解決のインターフェイスエラーが発生した他のすべての人に送信するメモです。
MSC000001: org.wildfly.network.interface.private サービスを開始できません: org.wildfly.network.interface.private サービスで org.jboss.msc.service.StartException: WFLYSRV0082: プライベート・インターフェースを確認できません。
答え1
これは私にとって効果的です。
docker run -p 8080:8080 -e KEYCLOAK_USER=admin -e KEYCLOAK_PASSWORD=admin quay.io/keycloak/keycloak:9.0.2 -Djboss.bind.address.private=127.0.0.1 -Djboss.bind.address=0.0.0.0
これはdocker run
次のコマンドです。https://www.keycloak.org/getting-started/getting-started-dockerしかし、2つの追加オプションがあります。
-Djboss.bind.address.private=127.0.0.1 -Djboss.bind.address=0.0.0.0
答え2
このように実行すると、podmanとdockerの問題がバイパスされます。
podman run --rm -p 8080:8080 -e KEYCLOAK_USER=admin -e KEYCLOAK_PASSWORD=admin registry.hub.docker.com/jboss/keycloak:latest -Djboss.bind.address.private=127.0.0.1 -Djboss.bind.address=127.0.0.1
答え3
dockerがipv6を使用している場合、wildflyサーバーはこのエラーで失敗します(このバグは当時Keycloak 8.0.2に存在しました)。
1つの解決策は、Dockerコンテナのipv6を無効にすることです。
docker-composeを使用する場合:
networks:
kc_net:
driver: bridge
enable_ipv6: false
それ以外の場合は、コマンドラインフラグを使用してください。
答え4
ipv6を有効にした後、これらのJAVA_OPTSを使用してwildflyを起動できます。
JAVA_OPTS = "-Djava.net.preferIPv4Stack=false -Djava.net.preferIPv6Addresses=true -Djboss.bind.address.private=::1 -Djboss.bind.address=::"