【问题标题】:Why Cypress is unable to determine if server is running?为什么赛普拉斯无法确定服务器是否正在运行?
【发布时间】:2020-08-04 15:20:21
【问题描述】:

我在从容器运行 Cypress 测试时遇到问题。

在我的docker-compose 中,我有以下服务:用户、客户端、users-db、nginx,它们都在运行。

我的baseUrl 设置为"http://nginx",因为我在某个需要参考的地方阅读 服务器正在运行的服务,在我的例子中是 nginx。

我也试过"http://localhost""http://client"

但是当我运行docker run -it -v $PWD:/e2e -w /e2e cypress/included:4.11.0 时,我不断收到Cypress could not verify that this server is running

非常感谢任何有助于解决问题的反馈。

【问题讨论】:

    标签: docker cypress


    【解决方案1】:

    发生这种情况是因为您的 cypress 容器不是 docker-compose 容器使用的网络的一部分。

    使用docker network ls 查看可用网络列表。应该有一个名为<docker_compose.yml's directory>_default

    然后,您可以通过在 docker run 中指定 --network <network_name> 标志在特定网络中运行容器。

    这个容器应该能够通过使用它们的服务名称作为主机名来与 compose 容器通信

    【讨论】:

    • 非常感谢!这让我很头疼。我注意到我的问题被关闭了 1 票。不知道为什么。
    • 因此,当在其他服务的网络之外运行赛普拉斯容器时,我需要明确告诉赛普拉斯连接到哪个网络以查找服务器。不错!
    猜你喜欢
    • 2022-11-10
    • 1970-01-01
    • 1970-01-01
    • 2022-09-30
    • 2023-04-04
    • 2023-02-10
    • 2020-12-23
    • 1970-01-01
    • 2021-12-05
    相关资源
    最近更新 更多