На новом проекте используем mongoDB. Docker у меня установлен под Wndows (Docker Toolbox). Для тестов используется phpUnit.
Когда запускаются тесты в баше workspace'а - все нормально работает. Проблемы появляются при запуске тестов в phpStorm'e. Он не может найти хост 'mongo', указанный в конфигурации проекта для mongoDB. Оно и понятно - это внутренний IP, выданный докером контейнеру mongoDB, и из-под хоста (Windows) о нем ничего не известно. Сама виртуальная машина получает IP 192.168.99.100. Таким образом, нужно как-то указать phpStorm, что mongo нужно искать по этому IP-шнику. То есть, нужно заменить параметры конфигурации mongoDB, причем только для phpStorm.
Наиболее простой способ - переопределить переменную среды в файле phpUnit.xml, указав явно IP-адрес виутальной машины. Если же, по какой-то причине, редактировать phpUnit.xml нельзя, можно сделать 2 вещи:
1) Добавить переменные среды для phpUnit в настройках phpStorm (Menu->Run->Edit Configurations...->phpUnit.xml->Environment Variables). После этого появится возможность запускать тесты из среды phpStorm по Alt+Shift+F10.
2) Установка нужной переменной среды прямо в консоли phpStorm перед запуском тестов:
> SET DATABASE_HOST=192.168.99.199 (** вместо DATABASE_HOST - имя вашей переменной среды **)
> phpunit
После этого можно будет запускать тесты из консоли phpStorm'а.
Надеюсь, эта заметка будет полезна кому-нибудь.
Когда запускаются тесты в баше workspace'а - все нормально работает. Проблемы появляются при запуске тестов в phpStorm'e. Он не может найти хост 'mongo', указанный в конфигурации проекта для mongoDB. Оно и понятно - это внутренний IP, выданный докером контейнеру mongoDB, и из-под хоста (Windows) о нем ничего не известно. Сама виртуальная машина получает IP 192.168.99.100. Таким образом, нужно как-то указать phpStorm, что mongo нужно искать по этому IP-шнику. То есть, нужно заменить параметры конфигурации mongoDB, причем только для phpStorm.
Наиболее простой способ - переопределить переменную среды в файле phpUnit.xml, указав явно IP-адрес виутальной машины. Если же, по какой-то причине, редактировать phpUnit.xml нельзя, можно сделать 2 вещи:
1) Добавить переменные среды для phpUnit в настройках phpStorm (Menu->Run->Edit Configurations...->phpUnit.xml->Environment Variables). После этого появится возможность запускать тесты из среды phpStorm по Alt+Shift+F10.
2) Установка нужной переменной среды прямо в консоли phpStorm перед запуском тестов:
> SET DATABASE_HOST=192.168.99.199 (** вместо DATABASE_HOST - имя вашей переменной среды **)
> phpunit
После этого можно будет запускать тесты из консоли phpStorm'а.
Надеюсь, эта заметка будет полезна кому-нибудь.
Комментариев нет:
Отправить комментарий