Как создать окружение для тестировщиков с помощью docker?
Добрый день.
Стоит задача создать на тестовом сервере изолированную среду для тестирования приложений на php засчет docker compose. Т.е. по ssh тестер коннектится на сервер, далее запускает скрипт на баше, и для него разворачивается тестовая среда. Но хоть убейте не могу понять как это все будет работать. Как сделать, что бы у каждого тестировщика запускалось собственное окружение, и что бы его окружение никак не пересекалось с окружениями другого тестера.
Много почитал в интернете, но там тривиальные примеры, 1 файл docker-campose.yml, у меня же в проекте их около 20..
sim3x, стоит задача сделать это именно в докере.. Может я что то не так понимаю, но в моем представлении рабочее окружение это обычная гостевая ОС дублирующая все настройки с боевого сервера. Как это все будет выглядеть в докере? Если у меня LAMP стек полностью разнесен на разных контейнерах. Как это будет все взаимодействовать между собой? Смотрю так же в сторону ансибла, для автоматизации развертывания.
link77, также как и на отдельных машинах. Какие проблемы, если у вас все разнесено?
Как сервисы будут друг друга находить(какой ip у кого)? Можно их именовать и обращаться по имен, там внутри свой днс поднимается.
Не очень понятно для чего вам ансибл.
нет проблем. примеров для LAMP для composer валом. Если планируете запускать все это добро на 1 сервере, то для разделения окружений между разработчиками придется развести их на разные порты (или разные адреса, если поднять сабинтерфейсы). Дальше тестировщики смогут заходить каждый в свое окружение по адрес:порт.
чуть более элегантное решение - поставить на входе реверс-проксю на том-же nginx, тогда входить можно будет по имени.
код внутрь контейнера можно доставлять или выкачивая внутрь при старте контейнера, или монтируя внутрь каталог с кодом с сервера. Наверняка есть еще 33 способа.