gitlab-ci add --net = параметр хоста для докера

Я разрабатываю проект php symfony и использую gitlab. Я хочу создать модульный тест на gitlab, для этого я использую файл gitlab-ci.yml:

image: php:5.6

 # Select what we should cache
 cache:
   paths:
   - vendor/

 before_script:
 # Install git, the php image doesn't have installed
 - apt-get update -yqq
 - apt-get install git -yqq

 # Install mysql driver
 - docker-php-ext-install pdo_mysql

 # Install composer
 - curl -sS https://getcomposer.org/installer | php

 # Install all project dependencies
 - php composer.phar install

 services:
 - mysql

 variables:
   # Configure mysql service (https://hub.docker.com/_/mysql/)
   MYSQL_DATABASE: hello_world_test
   MYSQL_ROOT_PASSWORD: mysql

 # We test PHP5.5 (the default) with MySQL
 test:mysql:
   script:
  - phpunit --configuration phpunit_mysql.xml --coverage-text -c app/

В настоящее время это не работает, потому что мое имя хоста не разрешено в контейнере докера.

Я нашел решение здесь: Как сделать так, чтобы док-контейнер использовал файл / etc / hosts на хост-машине?

Мой вопрос: где мне написать опцию --net = host?

Спасибо.


person barden    schedule 03.08.2016    source источник
comment
Похоже, это пока невозможно. Вот открытая проблема на gitlab.com с той же проблемой, которую вы упомянули gitlab.com/gitlab-org/gitlab-ci-multi-runner/issues/903   -  person Jawad    schedule 03.08.2016
comment
Какое имя хоста или что именно не работает? (возможно, есть другой способ решить вашу проблему)   -  person tmt    schedule 03.08.2016
comment
На самом деле мой сервер находится за брандмауэром, мой DNS перенаправляется на общедоступный IP-адрес. Он отлично работает из внешней сети, но с сервера я должен перенаправить DNS на локальный IP-адрес '10 .x.x.x '. Если вы понимаете, о чем я ?   -  person barden    schedule 03.08.2016
comment
2 года спустя все еще невозможно указать --net=host в gitlab-ci.yml?   -  person Guillaume    schedule 08.06.2018


Ответы (1)


Вам нужно использовать параметр network_mode в самом образе докера, отредактировав файл config.toml, как (несколько плохо) описанное в gitlab-runner расширенная документация по настройке.

вы также можете сделать это при создании образа докера:

gitlab-runner register --docker-network-mode 'host'

Я не верю, что вы можете установить его прямо из файла gitlab yml.

person Tim Rae    schedule 11.06.2018