まず、Apache2の初心者だと言ってみましょう。
2つのDockerコンテナー(Gitlabと電子メールサービス)のリバースプロキシとしてApache2を構成しようとしています。私の構成は次のとおりです。
<VirtualHost *:80>
ProxyPreserveHost On
# Servers to proxy the connection, or;
# List of application servers:
# Usage:
# ProxyPass / http://[IP Addr.]:[port]/
# ProxyPassReverse / http://[IP Addr.]:[port]/
# Example:
ProxyPass / http://172.17.0.2/
ProxyPassReverse / http://172.17.0.2/
ServerAlias www.gitlab.ch
ServerName www.gitlab.ch
</VirtualHost>
そして
<VirtualHost *:443>
ServerAdmin webmaster@localhost
ProxyPreserveHost On
# Servers to proxy the connection, or;
# List of application servers:
# Usage:
# ProxyPass / http://[IP Addr.]:[port]/
# ProxyPassReverse / http://[IP Addr.]:[port]/
# Example:
SSLProxyVerify none
SSLProxyEngine on
SSLProxyCheckPeerCN off
SSLProxyCheckPeerName off
SSLProxyCheckPeerExpire off
ProxyPass / https://172.17.0.2/
ProxyPassReverse / https://172.17.0.2/
ServerAlias www.gitlab.ch
ServerName www.gitlab.ch
/ etc/hostsファイルを編集しました。
構成ファイルはまったく同じようにセットアップされます(名前とIPアドレスを除く)が、何らかのリンクをたどるリンク(www.gitlab.chまたはwwww.email.ch)に関係なく、私は常にメールログインパネルで終了しますだから、Apacheがそれを優先していると思います。
ポート構成は次のとおりです(ホストマシン:コンテナー)
Gitlab:
8800:80
4433:443
Eメール:
2500:25
8000:80
4430:443
1100:110
1430:143
4650:465
5870:587
9930:993
9950:995
どんな助けも大歓迎です。
編集:それを修正する方法を見つけ、/ etc/hostsファイルを編集するだけでした
元の:
127.0.0.1 www.gitlab.ch
127.0.0.1 www.email.ch
一定:
172.17.0.2 www.gitlab.ch
172.17.0.3 www.email.ch
問題は、Docker Conatiners IPの代わりにローカルIPのホストマシンを使用したことです。