如何通过docker compose链接selenium服务器

时间:2016-09-19 15:28:47

标签: selenium docker docker-compose

如何通过docker compose将selenium服务器链接到另一个容器? 我的dicker-compose.yml是:

 version: '2'
    services:
        selenium:
            image: selenium/standalone-chrome
            ports:
                - "4444:4444"
        lamp:
            build: ./lamp
            ports:
                - "3306:3306"
                - "80:80"
            volumes:
                - /projects:/var/www/projects
            links:
                - selenium

然后

sudo docker exec -it composelamp_lamp_1 /bin/bash
root@68a87ec3325f:/# curl http://127.0.0.1:4444/wd/hub
curl: (7) Failed to connect to 127.0.0.1 port 4444: Connection refused

我做错了什么?

2 个答案:

答案 0 :(得分:3)

127.0.0.1错了。它们是不同的容器,因此主机不是localhost。

尝试:http://selenium:4444/wd/hub

将服务名称添加为容器的主机名别名

答案 1 :(得分:0)

我无法发表评论,所以我写了一个答案:

您可以检查端口4444是否已被其他应用程序使用?或者可能只是发布另一个端口。尝试例如:

ports:
    - "19900:4444"

然后尝试连接到http://127.0.0.1:19900/wd/hub

我希望它有所帮助。

编辑:也可能是您的应用程序未在您的localhost(127.0.0.1)上运行。在这种情况下,您应该弄清楚它正在运行的IP地址。