К основному контенту

Docker и взаимосвязь контейнеров с внешним миром

 Начал я изучать Docker и его возможности.  Все доходчиво понятно. Но начались проблемы в тот момент как  появилась потребность подключаться к контейнеру с внешнего мира.  День просидел, перелопатил много гугла. Нашел даже интересное описание сети контейнеров. Но не нашел возможности как же подключиться. Так как IP контейнера у меня никак не пинговался. Много танцев с бубном я танцевал и перепробовал много чего.

И наконец то я решил, ладно, так уж и быть. Нужно читать документацию. По другому чувствую я не решу вопрос.

dИ так

  1.  захожу я на https://docs.docker.com/network/
  2.  дальше со второй строки на https://docs.docker.com/network/links/
  3.  и второй абзац. https://docs.docker.com/network/links/#connect-using-network-port-mapping

docker run -d -P training/webapp python app.py 

ФИНИШ


Update

- как показала практика не все было так просто как казалось.  

  1. Изначально я не понимал разницы между docker и docker-compose. Что приводило меня часто в тупик.  Все команды которые указываются в docker в нужном формате можно указать и в docker-compose. Я пытался через docker выше указной командой  expose порты и удивлялся почему  в созданном проекте ничего не создается и прочие качели в этом роде. 
  2. были проблемы с Image , где нужно было правильно вставить окружные переменные пример MYSQL_ROOT_PASSWORD или взять уже системой сгенерированный пароль из лога. Все зависело в любом случае от Image который я использовал.  Я открывал порты и не мог достучаться до mysql root  потому что не вчитывался как извлекать или указывать доступ в определенной сборке. 

Пока я долбил камень Docker  с портами и паролями я постепенно пересмотрел Youtube с руководством по докеру, научился работать с Volume  и Network и прочим зоопарком.

Умное предложение для меня будущего и для тебя мой друг. 

Читай/смотри мануалы и учебные видео перед тем как погружаться в новую для тебя тему. И начинай с маленького "Hello World".

Комментарии

Популярные сообщения из этого блога

mutators работают с Eloquent и не работают с Query Builders

 После того как я два дня ковырялся с проблемой обновления данных используя Mutators  в Laravel я наконец то решил свой вопрос.  Теперь о самой проблеме: Используя Mutators  нужно понимать что мутаторы работают с E loquent и не работают с  Query Builders. И внимание ! update() относиться к Query Builders мутаторс не работает. $instance->update( $request->all() );  Мутатор работает :) $instance->fill($request->all()); $instance->save(); Источник

Alias в bash скрипте для показа IP

alias - это команда в bash-скриптах, которая позволяет создавать сокращения для других команд или комбинаций нескольких команд. С помощью псевдонимов вы можете заменять часто используемые или длинные команды короткими сокращениями, чтобы экономить время и усилия при вводе.