@docker_ru

Страница 1373 из 1375
Максим
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
Могу скинуть docker-compose, если поможет чем-то
я жоский) kill $(lsof -i :80 | grep ESTABLISHED | cut -d " " -f3) kill $(lsof -i :80 | grep LISTEN | cut -d " " -f3)

Ага
и верни как было, если работало на 80 порту)

Andrey
01.08.2019
06:31:24
и верни как было, если работало на 80 порту)
Какая разница , это натирование , его приложение не знает что он обращается по 8080

Должно всё работать

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 хоста, но как-то не красиво...

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 бинарников и вы только один из них делаете точкой входа. Как вы будете разбираться с передачей параметров?

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 не достаточно?

Александр
01.08.2019
09:54:56
docker run --help
Спасибо

-d daemon -p port. Dockee help не достаточно?
Ааа окей, понял, спасибо

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 и прочим, кто кэш формирует

Admin


George
01.08.2019
10:27:07
в остальном - никакой ценности компоновать стопицот команд в один 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
Ок, сейчас есть multistage-сборки. А как раньше это решалось?
когда-то давным-давно можно было наследоваться от двух образов, но это шляпа. По понятным причинам

Дмитрий
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
это естественно

потому что ты не можешь две файловые системы надежно смержить

Google
Roman
01.08.2019
10:37:38
и как быть?

George
01.08.2019
10:37:59
никак. Думать своей головой

писать свои докерфайлы

если совсем тяжело - ну, используй какую-нибудь шаблонизацию

можешь собирать докерфайлы - ансиблом (просто устанавливая нужный софт внутри контейнера и потом его коммитя)

George
01.08.2019
10:39:34
нет, не ансиблом снаружи, а внутри докерфайла делаешь ансибл чего-то там )

Roman
01.08.2019
10:39:53
писать свои докерфайлы
У вендоров скорее всего они лучшего качества, чем самому написать

Не зря же они в принципе написаны.

А так можно было бы самому писать с нуля, и зачем тогда готовые?

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
то есть смерджить несколько готовых образов эффективно никак нельзя?

Страница 1373 из 1375