reverse proxyのようなものがこの目的で最もよく使用されます。簡単なApacheの設定について説明しますが、nginxやHAProxyを使って設定するのは簡単です。例示の目的のために
、あなたはサーバー上で実行されている3つのサービスがあることに座ってみましょう:ポート4440
上のポート9000
RunDeck上のポート8080
SonarQube上
- ジェンキンスをまず、ドメイン名を使用するだけでサービスを区別するためには、DNSにいくつかのエントリを作成し、その名前をサーバのIPアドレスに指定する必要があります:
jenkins.example.com A 192.0.2.2
sonar.example.com A 192.0.2.2
rundeck.example.com A 192.0.2.2
次は、Apache HTTPサーバをインストールします(まだことを行っていない場合):
yum install httpd
ファイル/etc/httpd/conf.d/proxy.conf
作成します。
<VirtualHost *:80>
ServerName jenkins.example.com
ProxyPreserveHost On
ProxyPass / http://localhost:8080/
ProxyPassReverse / http://localhost:8080/
</VirtualHost>
<VirtualHost *:80>
ServerName sonar.example.com
ProxyPreserveHost On
ProxyPass / http://localhost:9000/
ProxyPassReverse / http://localhost:9000/
</VirtualHost>
<VirtualHost *:80>
ServerName rundeck.example.com
ProxyPreserveHost On
ProxyPass / http://localhost:4440/
ProxyPassReverse / http://localhost:4440/
</VirtualHost>
(ロジックがために、非常に明確でなければなりませんが詳細な説明、the docsを参照してください)
その後、httpdサービスを開始してください:service httpd start
。
- 命令はCentOSのためのものであるが、他のディストリビューションのためにあまり異なってはならない、それは(ログの明らかな痕跡なし)期待どおりに動作無効にSELinuxをしようとしていない場合は
- (
setenforce 0
& & service httpd restart
)
私はそれを試してみます – FranAguiar