Как я могу установить и настроить behat, ой, докер с jenkins на сервере amazon ec2?
Я хочу запускать свою функцию behat каждый раз, когда я что-то добавляю в свой Git A / c с помощью jenkins и соусных лабораторий на сервере ec2.
Есть много способов сделать это. Что вы знаете об Amazon EC2? А селен? А докер? Здесь много технологий … Хотите настроить сетку Selenium? Я постараюсь ответить на некоторые из них. Но вы спрашиваете так много вещей … XD
Сначала я расскажу вам о своем решении (Selenium grid):
Прежде всего, вам нужно создать концентратор Selenium с EC2 Ubuntu 14.04 AMI без интерфейса пользователя и связать его как раб jenkins с вашим мастером Jenkins. Или как непосредственно мастер. То, что ты хочешь. Только командная строка Загрузите Selenium Server отдельно. (будьте осторожны при загрузке версии. Если вы загрузите Selenium3Beta, все может измениться). Здесь вы можете настроить HUB. Вы также можете добавить Selenium Hub в качестве службы и настроить автоматический запуск при запуске сервера. важно, чтобы вы открыли порт Selenium по умолчанию (или тот, который вы настроили), чтобы узлы могли подключиться к нему. Вы можете сделать это на консоли Amazon EC2, когда вы создали свой экземпляр. Вам просто нужно добавить группу безопасности с входящим правилом для TCP в порт, который вы хотите для IP-адресов, которые вы хотите.
Затем вы можете создать сервер экземпляров Windows Server 2012 (например, так я и сделал) и выполнить тот же процесс. Загрузите ту же версию для Selenium и chromedriver (нет необходимости загружать FirefoxDriver для версий Selenium до Selenium3). Сгенерируйте текстовый файл и подготовьте команду Selenium для связи с HUB как NODE. И преобразовать его в * .bat, чтобы выполнить его. Если вы хотите запустить bat при запуске, вы можете создать службу с помощью планировщика задач или использовать NSSM (https://nssm.cc/). Не забудьте добавить правила в группы безопасности и для этой машины!
Вы можете связать столько серверов, сколько вы хотите, к вашему узлу.
Если вы хотите использовать докер, удачи! 😉 Ха-ха.
Нет, с помощью docker я рекомендую вам начать как можно проще, пытаясь создать Dockerfile локально, который запускает сервер Jenkins и Selenium Server, а НЕ в режиме сетки. Когда у вас это работает локально, отправьте его в хранилище. Когда все это будет запущено, создайте экземпляр EC2 и установите докер. Извлеките свой образ док-станции Selen и запустите его, связывая порты локального сервера с портами док-машины.
У вас здесь так много работы … Но это так интересно. Я рекомендую вам шаг за шагом создать лучшую инфраструктуру на каждой итерации. Не пытайтесь добавлять все эти технологии одновременно.
Thera — много сетей, говорящих об этих понятиях.
Удачи!
Других решений пока нет …