little big
а зачем вам 2 docker-compose?
один для логирования, другой для своей приложухи
Nikita
обычно 1 проект 1 docker-compose
twwlf
я вот, кстати, не уверен, что оно вообще так заработает
Nikita
заработает
twwlf
но я бы ссылался на fluentd по имени хостовой тачки
little big
обычно 1 проект 1 docker-compose
ну так и есть, 1 проект - система логирования. 2 - мое приложение. 3...n - другие приложения, которые тоже будут писать логи
twwlf
а ещё бы я постарался использовать имя с точкой – во избежание приколов с резолвингом
twwlf
А незя в докере точки в имени)
имя в смысле доменное
twwlf
а не имя контейнера
twwlf
в его кейсе на имя контейнера плевать вообще – к нему обращается демон, а не контейнер
twwlf
поэтому история с резолвингом через внутренний днс не работает
Aleksey
А в докер файле можно задать имя образа, кстати? Чот я сходу не нашёл такого. И не понимаю почему этого нет, может причина какая есть?
Konstantin
@hitmaker
twwlf
нет, нельзя (и незачем)
Aleksey
ну тебе не кажется, что это было бы довольно странным решением?
Не вижу ничего странного. Есть проект, в нём лежит рецепт. Почему мне надо задавтать имя итогового имеджа где-то вне репозитория?
little big
поэтому история с резолвингом через внутренний днс не работает
так как мне зарезолвить ip fluentd в параметрах лог драйвера автоматически?
twwlf
никак
twwlf
с точки зрения хоста
twwlf
выставлять наружу порт и ходи на адрес хоста
little big
хм
twwlf
в docker for mac/win, например, есть workaround на эту тему – но там совсем другая история
twwlf
давай туда ещё имя контейнера писать
Aleksey
Может быть. А может и не быть. Давайте не хранить исходники софта в репе, ведь реализаций может быть множество.
twwlf
ну, или, потому, что имя вообще ничего не значит
twwlf
А я что имел ввиду? 0_о
я-то откуда знаю
twwlf
ты написал "имеджа". Я так преполагаю, что это "image"
Aleksey
Ну
twwlf
а если ты путаешь имаджи и контейнеры, то я не знаю чем тебе помочь
Konstantin
Aleksey
А что такое контейнер? Это запущеные из имеджа файлы
twwlf
запущенные файлы?
twwlf
запущенный пациент
Aleksey
запущенные файлы?
Лол, нет. Я просто с другой стороны в это входил и чуть расхожусь с тобой в терминах.
twwlf
хочется и пошутить и не нагрубить
twwlf
про папу, другую сторону и последствия
twwlf
external_links меня тоже не спасет?
боюсь, что нет. У тебя эндпоинтом является адрес хоста
twwlf
у тебя слегка вывернутая наизнанку архитектура :)
little big
у тебя слегка вывернутая наизнанку архитектура :)
а как сделать так, чтобы это было более-менее вменяемо?
Aleksey
я, в общем, не спорю и не переубеждаю
Шмотри. Что такое контейнер? Это процесс изолированный ядром. Исходные файлы нужные этому процесу обычно представлены в виде слоёв имеджа. И когда говорят "контейнер", в моём контексте имеется ввиду как раз имедж потому как "имён" у запущенного процесса-то нет. То что в докере это есть я упустил из виду, сорьки
twwlf
(у контейнеров тоже есть имена)
Aleksey
(у контейнеров тоже есть имена)
Берём процесс, изолируем его ядром. Вот прям руками, без враппера в виде докера. Тада! Имён нет, пока ты не начинаешь изобретать свой велосипед.
twwlf
@little0big где-то был реквест про resolvable hostname ровно для твоего случая
Aleksey
Ну ты же мне рассказываешь, что имена есть :)
twwlf
fair enough
little big
а как вообще организовывают сбор логов на отдельно стоящий efk-стек?
little big
я явно что-то не понимаю в архитектуре
twwlf
ну, во-первых, стоит решить вопрос статической/динамической конфигурации
twwlf
если эндпоинт доступен всегда по одному и тому же адресу – можно смело его использовать
Aleksey
btw, чего нелогичного в задании имени имеджа прямо в рецепте? Когда я собираю имеджи не-докером (например, bazel), то я именно там и пишу имя. Ибо декларативное описание, всё есть код, весь проект в репозитории. А тут мне чтоб "всё есть код" надо заврапать docker build во что-то. Хрень выходит.
twwlf
в том числе
twwlf
ты это в рамках кластера запускаешь?
little big
ты это в рамках кластера запускаешь?
на одной машине пока. Но планируется расширение на несколько
little big
хотелось сделать так, чтобы потом не плакать кровавыми слезами
twwlf
тогда, если вкратце – то во fluentd-address придётся использовать доступный в локалке адрес хоста
little big
окей, спасибо
little big
очень помогли. Так и сделаю
twwlf
всегда рады
twwlf
@twwlf выскажись плиз. Мне правда интересно мнение человека вне моего контекста
Сначала стоит договориться о терминах, а это долго, увы
twwlf
при случае, обязательно расскажу
Aleksey
Давай исходить из вот такого: у нас есть код, есть некая сборочная система (docker build), и цель — получить имедж соответствующий стандарту OCI. Почему задавать имя имеджа в рецепте для сборочной системы — не логично?
Aleksey
Тут терминов как-то и не осталось. Только голая суть.
twwlf
потому что есть куча внешних факторов?
twwlf
вот у тебя есть докерфайл FROM nginx:stable-alpine
twwlf
в которых ты подкладываешь 350 разных наборов статики
twwlf
а собираются образы абсолютно одинаково