У меня есть настройка докера со следующими контейнерами:
- selenium-hub
- selenium-firefox
- selenium-chrome
- spring bootapp
- узел / java сервис для тестов wct
Все эти контейнеры определены через docker-compose.Служба node / java создается следующим образом (извлечение из docker-compose):
wct:
build:
context: ./app/src/main/webapp
args:
ARTIFACTORY: ${DOCKER_REGISTRY}
image: wct
container_name: wct
depends_on:
- selenium-hub
- selenium-chrome
- selenium-firefox
- webapp
Тесты wct выполняются с использованием:
docker-compose run -d --name wct-run wct npm run test
И выглядит wct.conf.jsкак следующее:
const seleniumGridAddress = process.env.bamboo_selenium_grid_address || 'http://selenium-hub:4444/wd/hub';
const hostname = process.env.FQDN || 'wct';
module.exports = {
activeBrowsers: [{
browserName: "chrome",
url: seleniumGridAddress
}, {
browserName: "firefox",
url: seleniumGridAddress
}],
webserver: {
hostname: hostname
},
plugins: {
local: false,
sauce: false,
}
}
С помощью этой трассировки стека не выполняется тестовый запуск:
ERROR: Server failed to start: Error: No available ports. Ports tried: [8081,8000,8001,8003,8031,2000,2001,2020,2109,2222,2310,3000,3001,3030,3210,3333,4000,4001,4040,4321,4502,4503,4567,5000,5001,5050,5432,6000,6001,6060,6666,6543,7000,7070,7774,7777,8765,8777,8888,9000,9001,9080,9090,9876,9877,9999,49221,55001]
at /app/node_modules/polymer-cli/node_modules/polyserve/lib/start_server.js:384:15
at Generator.next (<anonymous>)
at fulfilled (/app/node_modules/polymer-cli/node_modules/polyserve/lib/start_server.js:17:58)
Я пытался исправить это в соответствии с: polyserve не может обслуживать приложение но без успеха.Я также попытался установить для hostname
значение wct
, так как это известное имя хоста для контейнера в сети Docker, но оно показывает ту же ошибку.
Я действительно не знаю, что делать дальше.Любая помощь приветствуется.