Максим
01.08.2019
06:11:48
Случайно не туда отправил сорри
Надеюсь у всех удалилось)
Yura
01.08.2019
06:12:06
Там как-то настроена система короче, что кода докер запущен, то просто project-name.local.io и проект открывается. Обновился б**ть до мохаве
Andrey
01.08.2019
06:13:02
http://project-name.local.io:8080 не работает? Проект на чем , кто веб сервер?
Google
Artur
01.08.2019
06:18:38
Ага
и верни как было, если работало на 80 порту)
Andrey
01.08.2019
06:31:24
Должно всё работать
Artur
01.08.2019
06:35:35
POPSODAV
01.08.2019
07:31:18
ребята, а подскажите как лучше разрулить такую конфигурацию. есть контейнер с MySQL, есть два контейнера с приложениями. один контейнер должен быть в host сети, другой в докеровском бридже. из обоих контейнеров нужен доступ к MySQL. как лучше сделать?
Ekaterina
01.08.2019
07:31:50
POPSODAV
01.08.2019
07:33:08
пока вижу вариант открытия портов мускуля на внешнем IP хоста, но как-то не красиво...
George
01.08.2019
07:33:08
внутри докера - на 0.0.0.0
POPSODAV
01.08.2019
07:33:40
да, но если он будет на 127.0.0.1, то он будет доступен только в контейнере с хост сетью
George
01.08.2019
07:34:22
опубликуй скуль через -p опцию докера. Я второй раз повторяю
Google
George
01.08.2019
07:34:58
при этом ты его делаешь доступным снаружи, но только через локалхост (т.е. это относительно безопасно и не нужно иметь секс с файрволлом)
и при этом он доступен полноценно внутри докер сети
POPSODAV
01.08.2019
07:36:10
у меня так и сделано сейчас. из контейнера с хост сетью доступ есть, а из контейнера который в докеровской сетки 127.0.0.1 это есть сам контейнер
George
01.08.2019
07:36:38
в контейнере должно быть listen 0.0.0.0
POPSODAV
01.08.2019
07:37:42
mysql биндить на 0.0.0.0? или в клиенте mysql из докеровской сети использовать адрес 0.0.0.0?
George
01.08.2019
07:38:45
да, скуль биндить на 0.0.0.0 внутри докера
POPSODAV
01.08.2019
07:39:54
т.е. у контейнера с мускулем две сети должно быть?
George
01.08.2019
07:41:47
нет
ты его засовываешь в свой докер сеть, где он нужен
+ публикуешь через опцию -p на хост
но повторюсь, что это один из вариантов
POPSODAV
01.08.2019
07:42:45
всё, дошло
спасибо
Ahmed
01.08.2019
08:22:47
George
01.08.2019
08:24:49
перед WORKDIR
у тебя PIP_DISABLE.... закачивается слэшом
это баг или фича?
Ahmed
01.08.2019
08:25:21
Не заметил, спасибо
Roman
01.08.2019
09:14:19
Мне нужно сделать образ докер на основе другого образа. Исходный образ принимает много параметров в аргументе run. Как мне их передать при вызове моего контейнера? Передавать и параметры исходного образа, и моего?
Anton
01.08.2019
09:17:03
если вы сделаете в конечном образе новый энтрипойнт, то перетрете этим энтрипойнт базового. В итоге все ваши параметры полетят в новый энтрипойнт. И это будет уже проблема этого энтрипойнта как он форвардит вызов к родительскому.
Google
Roman
01.08.2019
09:18:46
То есть нужно сделать энтрипоинт так, чтобы он мог вызвать с параметрами энтрипоинт базового образа?
А если цепочка наследования образов состоит не из 2, а из 10, например, как бороться с этим адом передачи параметров?
Anton
01.08.2019
09:25:06
забудьте на секунду про докер, представьте, что у вас 10 бинарников и вы только один из них делаете точкой входа. Как вы будете разбираться с передачей параметров?
George
01.08.2019
09:25:36
Anton
01.08.2019
09:26:21
я между делом вопрос задам, можно как-то избежать наследование лейблов?
Roman
01.08.2019
09:26:28
давай конкретный пример
Мне нужно собрать nginx с кастомными модулями, потом туда приложение .net core поставить и весь контейнер сделать частью домена windows
George
01.08.2019
09:26:55
ой. какой ад
Roman
01.08.2019
09:27:23
Задача требует
George
01.08.2019
09:30:05
если задача плохая.... то возможно требуется ее переформулировка )
Anton
01.08.2019
09:33:04
Прямо в лоб по цепочке передам
у вас в конечном образе файловая система с вашими десятью бинарниками. Решайте кто из них энтрипойнт и пусть он разбирается кого и как вызывать и какие у него самого для этого параметры
причем этот подход касается не только 10-го образа, но и 2-го и 3-го и т.д.
Roman
01.08.2019
09:37:01
Понял, спасибо
Буду разбираться
Александр
01.08.2019
09:48:41
Добрый день, подскажите пожалуйста , куда смотреть -- хочу почитать про ключи , запуска ? Или может это просто ключи называется. Т.е. тип docker run -t -i . В частности конечно интересует -d(но это вроде дебаг мод) и -p
Дмитрий
01.08.2019
09:49:51
-d daemon -p port. Dockee help не достаточно?
Anton
01.08.2019
09:50:54
Александр
01.08.2019
09:54:56
Google
Александр
01.08.2019
09:55:28
Да что-то про -p это я лиханул.
Алексей
01.08.2019
09:55:28
Спасибо
Работает со всеми программами
Александр
01.08.2019
09:55:47
Roman
01.08.2019
10:25:55
Как понять, какие команды имеет смысл в один блок RUN объединять, а какие - нет?
George
01.08.2019
10:26:24
очень просто
Если у тебя команда 1 создает 10ГиБ файл, а команда 2 его удаляет, то их надо в один RUN. Иначе у тебя образ вырастет на 10ГиБ
это относится ко всяким pip install, apt, apk add и прочим, кто кэш формирует
в остальном - никакой ценности компоновать стопицот команд в один RUN нет
Roman
01.08.2019
10:28:53
То есть нужно экономить на размере промежуточных слоев
George
01.08.2019
10:29:21
желательно
Roman
01.08.2019
10:29:55
Допустим мне нужно использовать фунциональность нескольких образов. Как понять, какой из них должен быть родительским?
Ок, сейчас есть multistage-сборки. А как раньше это решалось?
George
01.08.2019
10:31:23
Дмитрий
01.08.2019
10:33:21
George
01.08.2019
10:33:30
несомненно
Roman
01.08.2019
10:36:49
например? писать самому докерфайл, очевидно
Самому, это понятно. Но хочется же воспользоваться готовыми решениями по максимуму. Например, мне нужны образы nginx и .netcore-sdk. Я могу выбрать один из них, а функциональность другого самому воспроизвести в докерфайле. Но меня, как разработчика, смущает низкая повторная используемость
George
01.08.2019
10:37:13
это естественно
потому что ты не можешь две файловые системы надежно смержить
Roman
01.08.2019
10:37:38
и как быть?
Google
George
01.08.2019
10:37:59
никак. Думать своей головой
писать свои докерфайлы
если совсем тяжело - ну, используй какую-нибудь шаблонизацию
можешь собирать докерфайлы - ансиблом (просто устанавливая нужный софт внутри контейнера и потом его коммитя)
Maksim
01.08.2019
10:39:17
George
01.08.2019
10:39:34
нет, не ансиблом снаружи, а внутри докерфайла делаешь ансибл чего-то там )
Roman
01.08.2019
10:39:53
Не зря же они в принципе написаны.
А так можно было бы самому писать с нуля, и зачем тогда готовые?
George
01.08.2019
10:40:55
Roman
01.08.2019
10:43:22
George
01.08.2019
10:43:33
потому что вендор необязательно хорошо шарит в докере
и вообще докерхаб помойка
Roman
01.08.2019
10:43:51
большинство шарят, думаю
George
01.08.2019
10:44:09
ну, да, действительно, а чего шарить-то.... отличный подход, блин
Roman
01.08.2019
10:44:11
то есть смерджить несколько готовых образов эффективно никак нельзя?
George
01.08.2019
10:44:11
?