docker集装箱之间的连接失败
我的应用程序由一个独立的java服务器,一个客户端java web启动应用程序,一组所有在一个wildfly实例中运行的webapps以及postgres组成。
客户端容器只是一个服务于JNLP和相应的java客户端的nginx服务器。
我所有的容器都在同一台主机上运行。
这里是我的dockerfile的一个稍微精简版本:
version: '3' services: server: privileged: true image: <server_image> networks: - myapp client: image: <client_image> networks: - myapp webapp: privileged: true image: <wildfly_image> networks: - myapp postgres: image: <postgres_image> volumes: - /pgdata:/pgdata networks: - myapp lb: image: dockercloud/haproxy:latest environment: - FORCE_DEFAULT_BACKEND=False - ADDITIONAL_BACKEND_WEBAPPS=server webapp1 webapp:8080 - ADDITIONAL_BACKEND_CLIENT=server client1 client:80 - ADDITIONAL_BACKEND_SERVER=mode tcp,server server1 server:8080 - EXTRA_FRONTEND_SETTINGS_443=acl url_xmlrpc path_beg /xmlrpc, \ acl url_api path_beg /api, \ acl url_sys_api path_beg /sys-api, \ acl url_dashboard path_beg /dashboard-app, \ acl url_client path_beg /, \ use_backend WEBAPPS if url_xmlrpc, \ use_backend WEBAPPS if url_api, \ use_backend WEBAPPS if url_sys_api, \ use_backend WEBAPPS if url_dashboard, \ use_backend CLIENT if url_client - EXTRA_FRONTEND_SETTINGS_8443=mode tcp,use_backend SERVER ports: - 443:443 - 8443:8443 networks: - myapp networks: myapp: external: false
从我的电脑,我可以从客户端容器下载java web开始客户端,我可以从webapp容器中加载webapps(在铬),我可以连接到独立的java服务器。 java服务器能够连接到postgres。 webapps能够从客户端容器中加载资源。
除了wildfly webapp之外的所有东西都不能build立到独立java服务器的TCP套接字连接。
这在AWS中运行,并且防火墙是开放的。 CentOS已经完全更新了,我正在运行Docker版本17.05.0-ce,使用docker-compose版本1.14.0-rc1构build89658be,并构buildc18a7ad。
我在内部数据中心运行完全相同的设置,一切都完美无瑕。
有没有人知道可能会发生什么?
- Selenium:无法在Docker Selenium Grid Setup上运行GhostDriver(phantomJS)节点
- 服务“networking”未能build立:lstat apache / sites-enabled / 000-default.conf:没有这样的文件或目录
- Docker db容器正在运行。 另一个使用pid <id>的进程使用unix套接字文件
- 如何在Docker中为应用程序configuration多个ips
- 最大TCP连接(使用不同的IP /容器)
- 运行多个Docker虚拟机的服务器如何处理TCP限制?
- Nginx,AWS,EB,Docker,TCP Socketconfiguration400个不好的请求
- 防止Docker撰写创build单独的networking
- mySQL Docker“错误2002(HY000):无法通过套接字连接到本地MySQL服务器”
- jenkins容器中的docker工具(与装载的docker套接字)没有finddocker守护进程来连接
- Docker中的Web Socket握手错误