-2

如何在亚马逊 ec2 服务器中使用 jenkins 设置和配置 behat、ahoy、docker?

每次我在 ec2 服务器中的 jenkins 和 sauce labs 的帮助下在 Git A/c 中推送某些内容时,我都想运行我的 behat 功能。

4

1 回答 1

0

有很多方法可以做到这一点。您对 Am​​azon EC2 了解多少?和硒?和码头工人?这里有很多技术...您要配置 Selenium 网格吗?我将尝试回答其中的一些问题。但是你问了很多事情...... xD

我先告诉你我的解决方案(Selenium grid):

首先,您需要使用没有 UI 的 EC2 ubuntu 14.04 AMI 创建一个 Selenium 集线器,并将其作为 jenkins 从站链接到您的 Jenkins 主站。或者直接作为大师。你想要什么。只有命令行。独立下载 Selenium Server。(下载版本时要小心。如果您下载 Selenium3Beta,情况可能会发生变化)。在这里您可以配置 HUB。您还可以将 Selenium Hub 添加为服务并配置为在服务器启动时自动运行。打开 Selenium 默认端口(或您配置的端口)非常重要,以便节点可以连接到它。创建实例后,您可以在 Amazon EC2 控制台上执行此操作。您只需要在您想要的 IP 端口中添加一个带有 TCP 入站规则的安全组。

然后,您可以创建一个 Windows server 2012 实例服务器(例如,这就是我所做的),并执行相同的过程。为 Selenium 和 chromedriver 下载相同的版本(对于 Selenium3 之前的 Selenium 版本,无需下载任何 firefoxdriver)。生成一个 txt 文件并准备 Selenium 命令以作为 NODE 链接到 HUB。并将其转换为 *.bat 以执行它。如果您想在启动时运行 bat,您可以使用任务调度程序创建服务或使用 NSSM ( https://nssm.cc/ )。不要忘记也将规则添加到这台机器的安全组中!

您可以将任意数量的服务器链接到您的节点。

如果你想使用 docker,祝你好运!;) 哈哈。不,我建议您使用 docker 尽可能简单地开始尝试在本地创建一个运行 Jenkins 服务器和不在网格模式下的 Selenium 服务器的 Dockerfile。当你让它在本地工作时,将它推送到存储库。当您运行所有这些时,创建一个 EC2 实例并安装 docker。拉取您的 selenium docker 映像并运行它将本地服务器端口链接到 docker 机器端口。

你在这里有很多工作要做……但这很有趣。我建议您在每次迭代中逐步创建更好的基础架构。不要试图同时添加所有这些技术。

Thera 有很多网站都在谈论这些概念。祝你好运!

于 2016-09-26T14:36:40.723 回答