如何让 Zalenium 与 A​​WS Fargate 一起工作?

How to make Zalenium work with AWS Fargate?

问题

我想在使用 AWS Fargate 的容器中使用 Zalenium。然而,为此,我们必须拉取两个镜像:Zalenium 和 Selenium。实际上,在其过程中,Zalenium 使用 Selenium 映像创建容器。因此它需要在某处找到图像。

可能的解决方案

我正在考虑创建一个安装了 Docker 的 ubuntu 容器,它将 运行 以下命令:

它会先拉取镜像

docker pull elgalu/selenium
docker pull dosel/zalenium

然后创建一个安装了 Docker 套接字的 Zalenium 容器以创建另一个容器:

docker run --rm -ti --name zalenium -p 4444:4444 \
      -v /var/run/docker.sock:/var/run/docker.sock \
      -v /tmp/videos:/home/seluser/videos \
      --privileged dosel/zalenium start 

这意味着我将创建一个容器,该容器位于另一个容器内,该容器位于另一个容器内,这听起来并不简单。

所以在这样做之前,我想看看是否有人有更好的解决方案。作为 AWS 的新手,我可能错过了一些东西。

您可以通过 Zalenium 容器隐式拉取图像,只需检查 https://opensource.zalando.com/zalenium/#tryit,部分 "Or without pulling elgalu/selenium explicitly:"

示例:

    # Pull Zalenium
    docker pull dosel/zalenium

    # Run it!
    docker run --rm -ti --name zalenium -p 4444:4444 \
      -e PULL_SELENIUM_IMAGE=true \
      -v /var/run/docker.sock:/var/run/docker.sock \
      -v /tmp/videos:/home/seluser/videos \
      --privileged dosel/zalenium start

    # Point your tests to http://localhost:4444/wd/hub and run them

    # Stop
    docker stop zalenium