Anonymous
Смотри, две истории:
1. на ubuntu нужно вручную чистить кеши apt. На alpine - стандартный ключик.
Мелочь ? 200 метров.
2. хз что там накручено в nodejs образах, но вот мне от прошлого админа достались образы по сборке статики на nodejs.
Вместо 2х-уровневой сборки контейнера - нода с модулями остаётся контейнерами + гит + статика.
Итого - около гига. Это правда.
Уменьшить можно ?
Конечно.
Arthur
Гиг да не сэкопоним конечно, но значительно экономит время сборки
ruby:2.5 - голый в сжатом виде это уже 350, установив туда гемов и зависимостей в гиг легко уходит
ruby:2.5-alpine c зависимостями в сжатом виде не выходит за 200
Anonymous
Ах да, не забудем, что один только gcc 700 метров весит ;)
да, это я
Anonymous
ну да, но с alpine лучше же работает ?)))
Anonymous
это know-how.
Arthur
да, это я
При чём тут работает? Вы не в состоянии добавить очистку в RUN при сборке контейнера?
Arthur
alpine все равно лучше поддается оптимизации, + из под капота пару сотен метров экономит
Anonymous
+1
а чего плюс-то ?)
настраивать инструмент надо.
Anonymous
да, это я
Anonymous
а тут алпайн - швейцария и это все )
Anonymous
Ужас какой.
Да шучу я.
но до убунты минимал - убунта метров на 200 больше места занимала - это правда.
Anonymous
Хотя у меня еще поле для оптимизаций есть.
времени на это нет)
Mixer
А кто нибудь понимает почему именно alpine базовый в докере? Я просто обычный пользователь докера - но alpine мне кровь пил с composer например )
Anonymous
Anonymous
а то, что кровь пьёт - ну а что вы хотели, когда "без всего" :)
Mixer
«Дистрибутив без всего» - ооок))) хорошая идея!)))
paulwinex
подскажите а есть ли у композа такой флаг который удалить остановленные контейнеры после команды down?
Anonymous
Это не идея - это позиционирование.
Они оказались в тренде.
Evgenii
paulwinex
вот нет
Evgenii
paulwinex
по команде docker ps -a остаётся ряд контейнеров
paulwinex
ща
paulwinex
плин, ну как так то? щас удалилось)
Mixer
docker system prune -a ?
да, это я
paulwinex
а, понял. не удаляются когда запускаю без -d
paulwinex
то есть если запустить просто
docker-compose up
а потом Ctrl+C
то контейнеры не удаляются
Mixer
Не
paulwinex
ну у меня так
paulwinex
Mixer
Нуу... вроде правильно все
да, это я
Чем различаются worker_normal и worker_high?
paulwinex
ну пусть правильно. ну а удалить то автоматично можно?
paulwinex
paulwinex
я это вижу только через спайку команд через &&
paulwinex
типа после останова сразу вторая запустится
paulwinex
docker-compose up && docker rm $(docker ps -a -q -f status=exited)
да, это я
docker-compose тоже поддерживает rm.
paulwinex
ну а как пишется? я по всякому писал, ошибка только
paulwinex
версия 3
paulwinex
хотя это версия yml
paulwinex
ну там отдеьно есть как вторая команда
paulwinex
а в виде флага чото нету
paulwinex
еще и спрашивает подтверждение
paulwinex
в общем так тогда плоучается
docker-compose up && docker-compose rm -f
paulwinex
не особо эстетично но пойдет для тестов
Vladimir
В alpine используется альтернативная реализация libc под названием musl, которая имеет ряд особенностей, о них следует помнить, особенно про dns: https://wiki.musl-libc.org/functional-differences-from-glibc.html
paulwinex
читаю док и малость не поднял. если я создам файл .env то композ автоматом его подхватит во время старта?
paulwinex
https://docs.docker.com/compose/environment-variables/#the-env-file
paulwinex
и что если у меня есть опция
env_file:
то в каком порядке будет загрузка?
paulwinex
либо .env используется внутри yml а файлы указанные в env_file внутри контейнера?
paulwinex
похоже работает оно так.
Внутри docker-compose.yml можно использовать переменные, но только если их объявить в файле .env. Иные не принимаются. Но ничто не мешает в параметре env_file прописать его же чтобы отправить эти переменные в контейнер, плюс еще дополнительные файлы если надо.
Fess
Всем привет! Подскажите, какой выбрать тип Storage Driver для файловой хранилки на базе NextCLoud, крутящийся в докере, с довольно активной скачкой/закачкой больших файлов?
Lev
Всем привет. Застрял на установке. По офф мануалу установил последнюю версию докера в бубны, добавил своего подьзователя в группу, сделал логаут. После входа ни сервис запустить ни hello-world выполнить.
docker: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?.
See 'docker run --help'.
Гугол говорит добавить пользователя в группу и перелогиниться....что я, собсна, и сделал. Даже перезагружался.
Анатолий
Ton
Lev
Денис
Lev
По ходу дело в том что я на WSL его накатил. Удалить кстати тоже не даёт)
Kirill
Lev
Lev
спасибо, буду без WSL накатывать
Денис
Lev
Да вот сижу читаю насколько это больно. Придется делать дуалбут на 120гиговом винте)
Sergey
http://muff.kiev.ua/content/optimizatsiya-raboty-mysql-keshirovanie-zaprosov
Oleksii
Всем привет,подскажите плс,не могу запустить docker-compose от своего юзера,версия 18.03.1,ОС - убунту 16.04
Igor
sudo usermod -aG docker oleksii
Oleksii
так я всеравно внутри контейнера root
Igor
олсо sudo chmod a+x /usr/lib/bin/docker-compose
Igor
внутри контейнера ты можешь бюыть кем угодно, а вот хосту неугодно, что ты не в группе, от которой запущен докер демон
Igor
вот он и ругается
Oleksii
Oleksii
получаю как от root