Мой сайт работает в стеке LEMP с использованием docker-compose, все прекрасно работает.
Я следовал официальной документации для докера Selenium, мой файл композитора - их копия:
version: "3"
services:
selenium-hub:
image: selenium/hub:3.12.0-cobalt
container_name: selenium-hub
ports:
- "4444:4444"
chrome:
image: selenium/node-chrome:3.12.0-cobalt
depends_on:
- selenium-hub
environment:
- HUB_HOST=selenium-hub
- HUB_PORT=4444
firefox:
image: selenium/node-firefox:3.12.0-cobalt
depends_on:
- selenium-hub
environment:
- HUB_HOST=selenium-hub
- HUB_PORT=4444
Тогда я настроил кодовое восприятие точно в соответствии с документацией:
acceptance.suite.yml
actor: AcceptanceTester
modules:
enabled:
- WebDriver:
url: http://172.22.1.2
browser: chrome
- \Helper\Acceptence
TestCest.php
...
public function tryToTest(AcceptanceTester $I)
{
$I->amOnPage('/');
$I->see('Homepage');
}
...
При выполнении тестов они прерывают время ожидания и терпят неудачу, говоря This site can't be reached
. Контейнер Docker определенно работает и доступен через веб-браузер с помощью IP-контейнеров 172.22.1.2
Все тесты запускаются и работают, когда я использую PhpBrowser по умолчанию, поэтому кажется, что кодовое восприятие не может получить доступ к контейнеру селена селена. Любой совет по этому поводу?
EDIT .........
Добавление docker-compose для наглядности
version: "3.1"
services:
mariadb:
image: mariadb:10.1
container_name: reports-mariadb
working_dir: /application
volumes:
- .:/application
environment:
- MYSQL_ROOT_PASSWORD=reports
- MYSQL_DATABASE=reports
- MYSQL_USER=reports
- MYSQL_PASSWORD=reports
ports:
- "8011:3306"
networks:
reports:
ipv4_address: 172.22.1.3
webserver:
image: nginx:latest
container_name: reports-nginx
working_dir: /application
volumes:
- .:/application
- ./dev/nginx/nginx.conf:/etc/nginx/conf.d/default.conf
ports:
- "8010:80"
networks:
reports:
ipv4_address: 172.22.1.2
php-fpm:
build: dev/php-fpm
container_name: reports-php-fpm
working_dir: /application
volumes:
- .:/application
- ./dev/php-fpm/php-ini-overrides.ini:/etc/php/7.2/fpm/conf.d/99-overrides.ini
networks:
reports:
ipv4_address: 172.22.1.4
networks:
reports:
driver: bridge
ipam:
config:
- subnet: 172.22.1.0/24