GITLAB-CI - присоединиться к сети, созданной docker-compose - PullRequest
0 голосов
/ 27 июня 2019

Я создаю gitlab-ci для запуска тестов e2e над моим приложением, поэтому, если у меня есть этот docker-compose.yml:

services:
  chrome:
    image: zenika/alpine-chrome:latest
    command: [
      chromium-browser,
      "--headless",
      "--no-sandbox",
      "--disable-gpu",
      "--ignore-certificate-errors",
      "--reduce-security-for-testing",
      "--remote-debugging-address=0.0.0.0",
      "--remote-debugging-port=9222",
      "https://google.com/",
    ]
    ports:
      - "9222:9222"
    networks:
      - test-e2e

networks:
  test-e2e:
    ipam:
      driver: default
      config:
        - subnet: 172.28.0.0/16

, когда я запускаю docker-compose up, все просто работает нормально,и на моей локальной машине я могу посетить localhost:9222 и получить доступ к отладчику Chrome.


Однако, когда я запускаю ту же работу на gitlab-ci, я получаю ошибку ECONNREFUSED :

F---F

Failures:

1) Scenario: List of Profiles # src/features/profile.feature:3
   ✖ Before # dist/node/development/webpack:/hooks/puppeteer.hooks.ts:17
       Failed to fetch browser webSocket url from http://localhost:9222/json/version: connect ECONNREFUSED 127.0.0.1:9222
       Error: connect ECONNREFUSED 127.0.0.1:9222
           at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1191:14)

Итак, ясно, что Я не могу присоединиться к сети docker-compose и получить доступ к localhost:9222 из задания

My gitlab-ci.yml довольно прост и выглядит так:

E2E tests:
  stage: test end-to-end
  image:
    name: docker/compose:1.24.1
    entrypoint: ["/bin/sh", "-c"]
  services:
    - docker:dind
  before_script:
    - apk --update add nodejs yarn
    - docker-compose -f test-e2e.yaml up -d
  script:
    - yarn test:cucumber
  after_script:
    - docker-compose -f test-e2e.yaml down

yarn test:cucumber в основном запускает огурца и кукловода, пытающегося получить доступ к localhost:9222, чтобы получить метаданные chrome.


Как я могу присоединитьсясеть, созданная docker-compose из задания gitlab-ci?

  • У меня нет доступа для редактирования конфигураций бегуна
...