Docker容器内的ManageIQ Web应用程序无法连接到Hawkular外部容器
我使用带有ssl端口的Docker容器中的监控应用程序“ManageIQ”来检查位于Docker容器外部的应用程序“hawkular”。 以下是docker命令:
docker pull manageiq/manageiq:euwe-2 docker run --privileged -d -p 8443:443 manageiq/manageiq:euwe-2
我在“ManageIQ”docker容器中configurationssl设置
docker exec -ti "container-id" bash –l [root@17a6a6bd8743 vmdb]# vi /etc/httpd/conf.d/ssl.conf ServerName localhost:8443 SSLProtocol -All +TLSv1 +TLSv1.1 +TLSv1.2 SSLCertificateFile /opt/manageiq/manageiq-ui-service/node_modules/browser-sync/lib/server/certs/server.crt SSLCertificateKeyFile /opt/manageiq/manageiq-ui-service/node_modules/browser-sync/lib/server/certs/server.key [root@17a6a6bd8743 vmdb]# systemctl restart httpd [root@17a6a6bd8743 vmdb]# yum install firewalld -y [root@17a6a6bd8743 vmdb]# systemctl start firewalld [root@17a6a6bd8743 vmdb]# systemctl enable firewalld [root@17a6a6bd8743 vmdb]# firewall-cmd --add-service=https --permanent success [root@17a6a6bd8743 vmdb]# firewall-cmd --reload success
ManageIQ Web应用程序https:// localhost:8443成功运行。 但无法连接到位于Docker容器外部的url为http:// localhost:8080的 hawkular。
这两个应用程序有不同的“本地主机”,但我不知道如何处理这个问题。 我错过了解决这个问题的任何过程吗?
主机操作系统上的container
中的localhost
主机不是localhost
主机。 这些是不同的。
要从container
连接主机操作系统的地址,默认使用默认bridge network
泊坞窗的docker0
接口。 (当然,你可以创build你自己的dockernetworking而不是默认的桥接networking,请参考这里 )
$ ifconfig docker0
例如,如果docker0
接口的IP为172.20.0.1
,则使用172.20.0.1:8080
。