2017-06-19 11 views
7

docker keycloak base urlをパラメータとして設定するにはどうすればよいですか?カスタムベースURLを使用してKeycloakドッカーの逆プロキシを設定する

私は、次のnginxのプロキシの設定を逆に持っている:私はhttp://example.com/keycloak/にアクセスしようとすると

server { 
    listen 80; 
    server_name example.com; 

    location /keycloak { 
     proxy_pass http://example.com:8087/; 
    } 
} 

私はkeycloakのhttpではなくhttp://example.com/keycloak/auth/

任意のアイデアのhttp://example.com/auth/にリダイレクトしましたか?

+0

FrancoisMaturel提案を支援します。 '場所/ keycloak {proxy_pass http://example.com:8087/keycloak;}' @FrançoisMaturel私はあなたが示唆したものを試みたが、それは動作しませんでした –

答えて

4

はちょうどその@Homeをテストし、実際には複数のコンフィギュレーションの追加が必要とされています

1 /ドキュメントで説明したようにENV -e PROXY_ADDRESS_FORWARDING=trueでkeycloakコンテナを実行し、これはkeycloakするためにアクセスするプロキシの方法で必要とされます:

docker run -it --rm -p 8087:8080 --name keycloak -e PROXY_ADDRESS_FORWARDING=true jboss/keycloak:latest 

はまたウェブコンテキストを変更/このSO question

2で説明しましたauth

<web-context>auth</web-context> 

から

$JBOSS_HOME/standalone/configuration/standalone.xml keycloakの設定ファイル内のデフォルトのkeycloakの構成ポイントあなたがドッキングウィンドウのためにこれを自動化する必要がある場合次に、あなただけの新しいを作成し、 keycloak/auth

<web-context>keycloak/auth</web-context> 

にそれを変更することができますキークローズ画像:

FROM jboss/keycloak:latest 

USER jboss 

RUN sed -i -e 's/<web-context>auth<\/web-context>/<web-context>keycloak\/auth<\/web-context>/' $JBOSS_HOME/standalone/configuration/standalone.xml 

3 /(主にHTTP/HTTPSの取り扱いについて)nginxの構成

location /keycloak { 
    proxy_pass http://example.com:8087; 
    proxy_set_header Host $host; 
    proxy_set_header X-Real-IP $remote_addr; 
    proxy_set_header X-Forwarded-Proto $scheme; 
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
} 

にいくつかのプロキシ情報を追加し、あなたが同じサーバー上にkeycloakするnginxのからのリクエストをプロキシする場合は、私が使用しようとproxy_pass http://localhost:8087;を使用することをお勧めし、そうでない場合外部Web要求によるプロキシを避けるためのプライベートネットワーク

ホープこれは

関連する問題