Эмиль
подключись к контейнеру и скопируй дефолтные конфиги
Alex
Вот, об этом я и говорю. Неужели нет иного способа?
Alex
Именно это и происходит. Это поведение изменить нельзя?
Alex
Понял. Эх, жаль, что так неудобно. Как думаете есть смысл писать в issue трекер на гитхабе?
Эмиль
а зачем менять поведение?
Эмиль
найди смысл в этом
Alex
Только в случае если удобство нарушает безопасность :)
Эмиль
Не удобно
ну тогда пользуйся другим инструментом
Эмиль
просто ради «неудобно» никто ничего менять не будет
Эмиль
объясни задачу - и тебе дадут 1000 способов как ее решить правильно в рамках модели контейнеров
Alex
Просто считаю нелепо, что мне нужно с хоста подсунуть конфиги для службы заранее. А если дефолтный конфиг можно получить только при установки службы?
Alex
объясни задачу - и тебе дадут 1000 способов как ее решить правильно в рамках модели контейнеров
А я задачу объяснил. Нуэно получить из контейнера файлы, которые создались после сборки образа.
Эмиль
ну сделай sh скрипт
Alex
ну сделай sh скрипт
Ну костыли же... Хотя придется делать так, если иного способа нет. Я затем и обратился, что не понимал насколько это нормальное поведение.
Alex
Странно, что до меня никто в этом не нуждался...
Эмиль
ты путаешь понятия инструмент/задача/решение
Эмиль
не вижу смысла объяснять короч
Alex
не вижу смысла объяснять короч
С этого стоило начинать.
Alex
Спасибо Константин
Alex
Спасибо
Mikhail
Господа, день добрый. Собсно, вопрос такого содержания, ежели никого сильно не перегружу: Есть у нас регистри с которого я спулил месяца три назад имеджи проектов и удачно про него запамятовал. Но сегодня случилось так, что пришлось делать pull, в ответ на который я получил хамское Error response from daemon и x509: certificate has expired or is not yet valid Подскажите, как наказать демона?
Mikhail
мерси, почитаю
Mikhail
дело было не в бабине
Bogdan (SirEdvin)
Странно, что до меня никто в этом не нуждался...
Ребята из https://www.linuxserver.io/ давно такое делают. Они просто закидывают конфиги в папки после запуска контейнера.
Evgeniy
Если не трудно, намекните, как можно сохранить файл в директорию хоста без -v
Artem
Никак, либо поднимать в контейнере ssh/ftp и через них копировать
Evgeniy
Спасибо, я неправильно задачу понял.
Evgenii
Если не трудно, намекните, как можно сохранить файл в директорию хоста без -v
Если сохранить это скопировать из контейнера тогда docker cp
Evgeniy
Монтирование нужно было, но из dockerfile, а не через -v
Artem
Из докерфайл это скорее не монтирование, а добавление в образ
Dmi3y
В докерфайле можно объявить volume
Dmi3y
Тогда такой volume будет создан на хосте "безымянным" при запуске
Dmi3y
Удобство извлечения из него файлов под вопросом, но если очень хочется без -v и cp, то вполне зайдёт
Asan
Привет, а кто-нибудь знает где логи docker daemon посмотреть на маке? в ~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/log почему-то пусто
Дмитрий
Первая дира смаппена в папку на маке вторая просто папка в контейнере третяя volume полны Пизд cd /root/ root@63a965cb9023:~# dd if=/dev/zero of=test.dat bs=1024 count=100000 102400000 bytes (102 MB) copied, 29.5125 s, 3.5 MB/s root@63a965cb9023:/tmp# dd if=/dev/zero of=test.dat bs=1024 count=100000 102400000 bytes (102 MB) copied, 0.195802 s, 523 MB/s root@63a965cb9023:/var/www/html# dd if=/dev/zero of=test.dat bs=1024 count=100000 102400000 bytes (102 MB) copied, 0.504954 s, 203 MB/s
Дмитрий
да, я уже начал использовать docker-sync для кода, мапить mysql/data тоже было ошибкой, думаю перенесу на volume
Asan
В виртуалке же, нет?
о точно, если кому ещё понадобится screen ~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/tty
Asan
и там /var/log/{docker,daemon}.log
Alex
Прикольно :)
Дмитрий
Есть вот такой способ создать named volume
Дмитрий
docker volume create --name xdebug-data docker run --rm -v xdebug-data:/volume busybox chown -R 33:33 /volume
Дмитрий
как это прописать в docker-compose.yml ?
Дмитрий
да я объявил, только внутри volume не было изменений после command:
Дмитрий
да я объявил, только внутри volume не было изменений после command:
Nikita
Странно, что до меня никто в этом не нуждался...
Ты не один. Сейчас именно с этим столкнулся, хотел получить доступ к конфигу nginx снаружи контейнера для оперативной правки. Так и не вышло.
Nikita
Друзья, кто верхнеуровнево опишет как реализовать такую схему. Есть IP, подключаешься к http://[ip]/ получаешь инфу с веб сервера1, по адресу http://[ip]/foo идет обращение на веб сервер2, по порту [ip]:5432 идёт доступ по ssh на сервере3. Примерно такая схема но количество серверов десятки. Как реализовать, куда копать? Интересует в 1 очередь архитектура решения. Есть требование к безопасности, чтобы изнутри каждого сервиса не было доступа наружу (отсюда есть смысл заморочиться с докером)
Nikita
Я так понимаю тут парадигменное противоречие но вот в чем оно пока не догоняю
Nikita
Запуская nginx в дефолтной конфигурации, работает. Далее хочу долго и упорно править конфиг, так как nginx не настолько круто знаю, чтобы с первого раза написать проксирование для десятка сервисов. Хочу примонтировать папку /etc/nginx к хосту. Получаю пустую папку в контейнере.
Anonymous
Посоны, я новый логотип принес
нꙺ
мочи
Anonymous
нꙺ
запредельное количество страдания в одной картинке
Nikita
Спасибо, буду практиковаться.
Igor
Господа .env автоматом в сервисы подбрасываеться?
Роман
Странно, но порты, открытые только в докер контейнере (по отношению к докер-сети), которые отображаются netstat'ом: tcp6 0 0 :::22 :::* LISTEN 542/sshd tcp6 0 0 :::5432 :::* LISTEN 20633/docker-proxy tcp6 0 0 ::1:25 :::* LISTEN 1716/exim4 тоже открыты во внешнюю сеть. Это нормальное поведение докера?
Роман
Но вопрос мой не в этом. Я хочу их закрыть и хорошим решением считаю такую штуку: iptables -I DOCKER -i $external_if -j DROP Но, например, после рестарта докера (а ещё не понятно, как будет при просто пересборке контейнера) это правило пропадает. Куда его можно записать, чтобы при рестарте докера или при пересборке контейнера, оно снова появлялось? Какой-то рестарт хук?
Anonymous
может это спасет: https://docs.docker.com/engine/reference/builder/#entrypoint
Роман
может это спасет: https://docs.docker.com/engine/reference/builder/#entrypoint
Речь о хост-системе, а не о контейнерах.
Anonymous
приношу извинения, не сообразил.
Роман
Отвечу сам себе, может пригодится кому-нибудь. Можно не трогать докеровские правила iptables, а создать свою цепочку в таблице mangle, в которую отправлять все пакеты с внешнего интерфейса. Назначить ей политику DROP по умолчанию и разрешить только то, что надо.
Роман
Ну это руками придётся настраивать постоянно при рестарте контейнера.
Oleg
Ребят всем привет. Не понимаю что не так. Создаю docker service create -e NAME="myname" -e BUCKET="s3bucket" -e ... image поднимается сервис. внутрь захожу, вижу что env подцепил. но скрипт который внутри почему то не хавает NAME переменную. все остальные правильно вставляет, а ее нет. менял на другие значения key=value, все равно не хочет. есть идеи?
Oleg
нашел в баше ошибку
Роман
Я имел в виду, что я не делал -p 80:80 и порт доступен только из соседнего контейнера, который в этой же сети (docker-compose'ом собирал)
Роман
Я к примеру. Это только часть netstat. Там есть и :::80.
Роман
Правильно ли то, что этот порт доступен из интернета?
Роман
В том и дело, что это не —host. Докер-композ создаёт свою сеть. В ней располагает контейнеры, которые видят порты друг друга.
Роман
И эти порты видят все в интернете)
Роман
Да.
Роман
Что-то я заработался похоже. Порты же открыты на 0.0.0.0 через -p. Сорян. Так и должно быть).
Роман
Да. Я рассматривал этот вариант. Контейнеров слишком много, чтобы каждый править. Проще на уровне хост-системы в iptables было разрешить только то, что нужно.
Anton
А кто как борется с докером на маке?
Anton
Сегодня обнаружил, что после очистки контейнеров какой-то файл занимает 67G
Anton
67G, Карл!
ill-ya
Образы? Вольюмы?
Anton
Все удалил