私の場合、DockerコンテナでSSLを有効にしたかったため、SSLProxyEngine On、ProxyPreserveHost Onおよび RequestHeaderを apache 2.4 vhostファイルにFront-End-Https "On"に設定する必要がありました。local.hostname.ofDockerHostについて、私の場合、ドッカーコンテナを実行しているホストサーバーの名前はlucasであり、ドッカーコンテナのポート443にマッピングされたポートは1443でした(ポート443はすでにホストのApacheによって使用されていたため)サーバー)、その行はこのようになりましたhttps:// lucas:1443 /
これが最終的なセットアップであり、正常に機能しています!
<VirtualHost *:443> # Change to *:80 if no https required
ServerName www.somewebsite.com
<Proxy *>
Allow from localhost
</Proxy>
SSLProxyEngine On # Comment this out if no https required
RequestHeader set Front-End-Https "On" # Comment this out if no https required
ProxyPreserveHost On
ProxyPass / http://local.hostname.ofDockerHost:12345/
ProxyPassReverse / http://local.hostname.ofDockerHost:12345/
</VirtualHost>
最後に、DockerコンテナでプロキシSSLヘッダーを設定する必要がありました。私の場合、コンテナーはnginxと、rubyアプリをセットアップするためのomnibusと呼ばれるものを実行していました。これはnginxの設定ファイルでも設定できると思います。誰かがこれが役立つと思う場合に備えて、それを書き留めます
nginx['redirect_http_to_https'] = true
nginx['proxy_set_headers'] = {
"Host" => "$http_host",
"X-Real-IP" => "$remote_addr",
"X-Forwarded-For" => "$proxy_add_x_forwarded_for",
"X-Forwarded-Proto" => "https",
"X-Forwarded-Ssl" => "on"
}
nginx['real_ip_trusted_addresses'] = ['10.0.0.77'] # IP for lucas host
nginx['real_ip_header'] = 'X-Real-IP'
nginx['real_ip_recursive'] = 'on'
Apache、ISP Config、Ubuntuサーバー16.04の完全なガイドはこちらhttps://www.howtoforge.com/community/threads/subdomain-or-subfolder-route-requests-to-running-docker-image.73845/#post-347744