Я работаю с 10-12 разработчиками, которые работают в разных средах разработки, преимущественно с MAMP или Nginx/php-fpm, управляемыми с помощью варева. Мы хотели бы сделать очень постепенный переход к Docker, пробовав его для разработки на одном из наших многочисленных продуктов, прежде чем совершать.Переход от других локальных инструментов разработки до Docker
Проблема, с которой мы сталкиваемся в этом сценарии, заключается в том, как избежать столкновений TCP-порта при одновременном запуске MAMP, Nginx и т. Д. Одновременно с Docker. Наличие критически важных приложений для работы со стандартными портами (в этом сценарии 80, 443 и 3306) имеет решающее значение, и сейчас мы вынуждены включать и выключать локальные серверные среды в зависимости от проекта.
По умолчанию docker отображает порты на хост на 0.0.0.0, есть ли способ изменить это поведение, позволяя различным серверным средам прослушивать один и тот же порт одновременно с использованием разных IP-адресов?
Спасибо!
Я я уверен, что вы можете обойти это, но я думаю, что [Vagrant] (https://www.vagrantup.com/) может быть лучше подходит для решения этой конкретной проблемы. С помощью Vagrant у вас может быть отдельная виртуальная машина, которая запускает ваше приложение (или несколько виртуальных машин для каждого приложения, и каждый из них может иметь свой собственный адрес и все они могут обслуживать контент через порт 80 без конфликтов, если это необходимо). Недостатком является то, что он намного более ресурсоемкий, чем Docker, и я лично считаю, что ящики для бродяг намного более громоздки для обновления этих изображений докеров. – threeve
@threeve Вы правы в том, что Vagrant, возможно, упростили эту ситуацию. По иронии судьбы, мы продолжали использовать докер, пока не будет опубликован недавний публичный релиз Docker for Mac beta поскольку мы обнаружили, что Docker Machine является плохой альтернативой поддержке родного Docker (мы все развиваемся по osx). В этой конкретной ситуации, однако, Docker, работающий в VM, вероятно, решит проблему, хотя я не желаю возвращаться, поскольку он пришел с его собственный набор недостатков. – ReginaldMantooth
Кажется, что Vagrant с Docker - ваш лучший выбор - мы используем это для среды разработки, и он работает хорошо. вы нашли? – ldg