Egor
Быстрый вопрос, нужно ли пересобирать образ если изменил немного код?
Dmytro 🇺🇦
на сервере
Статические файлы? Создан вольюм?
Dmytro 🇺🇦
создан
А с файлами что?
Egor
А с файлами что?
статические
Dmytro 🇺🇦
Тогда, не нужно. Но проверить стоит.
Artem
Всем привет есть контейнер apache + php etc ... на быструю руку Проблема вот в чем на локальной машине в hosts прописано что 192.168.0.5 siteone.local sitetwo.local -> адресация на контейнер если то же самое не прописать в самом контейнере то apache не адресует на виртуальный хост не могу понять в чем проблема
Artem
И реквесты что летят поподают в лог other_vhosts_access.log
Konstantin
https://httpd.apache.org/docs/
Konstantin
Всем привет. Небольшой нубский вопрос. изучаю докер. установил на вин10. Возник процесс WMI provider host и начал отжирать 2-5% процессорной мощности. На гитхабе этот случай разобран. есть ответ It seems that there were many hyper-v virtual switch managers created (Dummy) by docker. Once removing them the issue is gone with cpu usage dropping to 1.5-2%. Вопрос - как их удалить-то? Я только начал изучать, не могу сходу найти команду. Спасибо заранее.
Konstantin
1-2%... Как ты вообще замечаешь такое?)
Konstantin
докер десктоп с официального сайта у меня клава G15, системный монитор постоянно перед глазами :)
Konstantin
А гиперв до докера юзал/настраивал? Я хз, может и у меня что подобное, но 1-2% вообще не парят
Konstantin
ага, но там скорее до 5%
AlexK
привет, подскажите,плз, есть ли какая-то разница в том как я буду перегружать 1 контейнер, который стартовал через docker-compose со множеством сервисов? Можно ли использовать docker restart container?
Konstantin
А, или там нет рестарта. В общем можно, хоть удалять
Konstantin
В любом случае - можно же попробовать?)
AlexK
Можно и через dc только один
да, в dc есть рестарт, я вот пытаюсь понять разницу, чтобы потом не так больно было )
AlexK
Тогда рестарт и имя сервиса
есть ли какой-то очевидный бенефит использовать dc restart?
Konstantin
Konstantin
Или id
Konstantin
Ну и dc рулит сервисами, если несколько реплик, то все сразу. Давно dc не юзал, всех поведений не помню
Egor
Приветы. А есть ру-чат по k8s ?
Egor
@kubernetes_ru
Спасибо
Aleksei
Можно ли как-то в сварме прибить проброшенный порт к ip, как и в стоковом докере?
Aleksei
А как тогда доступ публичный ограничивать? Только фаервол?
Konstantin
не делать публичным
Рашид
Всем привет!
Alexander
RUN apt-get -qq update && \ apt-get -qq install или RUN apt-get -qq update RUN apt-get -qq install И почему?
Alexandra
Первое. Уменьшит объем образа
Andrey
RUN apt-get -qq update && \ apt-get -qq install или RUN apt-get -qq update RUN apt-get -qq install И почему?
2 команды RUN == 2 слоя, лишний обьем. Но тут есть и обратная сторона. Если вообще все команды сунуть в один RUN то не факт что кеш будет использоваться эффективно
Alexander
Об этом и речь. 2 команды - кеш. Кеш - скорость.
Andrey
Об этом и речь. 2 команды - кеш. Кеш - скорость.
те команды которые ты привел, нет смысла разделять. Они друг от друга зависят. Так что их логичнее ставить в одном RUN.
Alexandra
История от Cossack Labs о том, как они ужали Docker image с 900 Mb до 10 Mb #docker
Alexandra
Вот подходящая статья об этом
Petrovich
прикольно
Petrovich
посмотрим
Andrey
Как это зависят? Они могут и отдельно запускаться.
могут, но если юзаешь кешированный слой apt-get update, то ничего нового в install у тебя не прилетит
Alexander
Не прилетит. Но если нас устраивает, предположим, сегодняшний/вчерашний update, и мы хотим следующую тысячу раз использовать этот кеш, а не запускать всё заново - совсем другое дело. Да и там, где мы хотим самое последнее обновление - мы можем одной командой запустить.
Alexander
Вот подходящая статья об этом
Статья большая, где именно то, о чём идёт речь?
Alexander
ну если цель образа именно то что ставится через install то мб имеет смысл. Но в общем смысле нет.
Не вижу логики. Цель образа вообще не в этих строках достигается, в большинстве случаев (если мы о приложениях говорим).
Andrey
Не вижу логики. Цель образа вообще не в этих строках достигается, в большинстве случаев (если мы о приложениях говорим).
О том и речь, если вы суете в образ свое приложение, то подготовительные операции в виде установки пакетов лучше делать одной командой отдельным слоем. А если совсем в идеале, то собирать свой базовый образ чтобы при билде образа вашего приложения только само приложение пропихнуть в образ и не тратить время/ресурсы на установку пакетов.
Andrey
Почему "лучше ... отдельным слоем"? Чем?
Тем что это будет один слой. Меньше веса. Кеш. И вот это вот все
Alexander
Но этот кеш нельзя переиспользовать для сборки других проектов.
Andrey
Но этот кеш нельзя переиспользовать для сборки других проектов.
ну сделайте так чтоб было можно) Результаты apt-get -qq update вообще смысла никакого нет сохранять в образ. Я просто думал что там в конце твоего файла сборки они будут вычищаться, но постепенно понял что нет
Alexander
Первое. Уменьшит объем образа
Это не так: ~ $ cat Dockerfile_one_run FROM python:3.7-slim-stretch RUN apt-get -qq update && \ apt-get install -y -qq git gcc ~ $ cat Dockerfile_two_runs FROM python:3.7-slim-stretch RUN apt-get -qq update RUN apt-get install -y -qq git gcc ~ $ docker build . -f Dockerfile_one_run -t one_run ... ~ $ docker build . -f Dockerfile_two_runs -t two_runs ... ~ $ docker images REPOSITORY TAG IMAGE ID CREATED SIZE two_runs latest 88dac67d44d8 56 seconds ago 350MB one_run latest 0fa7d29242b2 About a minute ago 350MB ~ $
Andrey
"Чтобы было можно" - это отдельный RUN на update
результаты update не надо кешировать и вообще класть в реджистри. Вы так все место засрете просто новыми слоями с идексами репозиториев
Andrey
Хотя каждый дрочит как он хочет. Я видал индивидов у кого каждый раз все ставилось с нуля. Каждый образ метров по 800. Кто-то не может до сих пор понять отличия от виртуалок. Но это быстро проходит после того как разок почистишь реджистри на пару терабайт
Alexander
Я бы обоснование увидеть хотел, так-то
Ренат
Всем привет
Ренат
Не могу догнать для чего нужен всё-таки докер
Ренат
Чем отличается от vagrant?
arts
Чем отличается от vagrant?
Ты вот прям настолько ленивый?
Alexander
Он тебя трллит, а ты отчитываешься))
Никто никого не "трллит"
arts
Чем отличается от vagrant?
http://lmgtfy.com/?q=%D1%87%D0%B5%D0%BC+docker+%D0%BE%D1%82%D0%BB%D0%B8%D1%87%D0%B0%D0%B5%D1%82%D1%81%D1%8F+%D0%BE%D1%82+vagrant
Konstantin
вот кстати тут криво виртуалка обозначенна, App{1..3} должны быть для наглядности в одной виртуалке
Petr
при том 2 нижних блока полностью виртуализируются в виртуалке, вплоть до железа.
Petr
хотя в гипервизоре есть пробросы устройств
Petr
но не прямые, например hyper-v видуху не пробрасывают, а делают это как то софтово
Petr
и работает она криво и косо