
Alexey
30.05.2017
11:28:35

Konstantin
30.05.2017
11:29:03
только . и ..
хотя, я только проснулся, ещё мозг спит, туплю наверное)

Alexey
30.05.2017
11:30:16
Не. Синхронизация работает и так. Мне нужно получить из контейнера дефолтные конфиги службы. Для этого мне приходится запускать контейнер без volumes. Забирать дефолтные конфиги на хост (например через cat).
Если примонтировать каталог с хоста, то файлы в контейнере затираются

Google

Alexey
30.05.2017
11:30:44
Неужели никто не сталкивался? :)

Эмиль
30.05.2017
11:31:30
делай volume)

Alexey
30.05.2017
11:31:47
На всякий случай
version: "3"
services:
dns:
build: ./
image: bind
#volumes:
# - ./config:/etc/bind/
ports:
- 53:53

Эмиль
30.05.2017
11:32:16
прикрепи контейнер к volume - там конфиги твои и создадутся

Alexey
30.05.2017
11:32:21
Так файлы на хосте есть
version: "3"
services:
dns:
build: ./
image: bind
volumes:
- ./config:/etc/bind/
ports:
- 53:53
так, затираются

Эмиль
30.05.2017
11:32:35
пусть хранит файлы на volume
volume то не затирается

Alexey
30.05.2017
11:33:34

Эмиль
30.05.2017
11:33:54

Alexey
30.05.2017
11:34:24
Если я подключаю через volumes нужный каталог, то файлы в контейнере перезатираются файлами с хоста. В моем случае каталог на хосте пустой, что влечет к удалению всех файлов из каталога в контейнере

Google

Эмиль
30.05.2017
11:35:43
сделай чтобы хост юзал конфиги в volume. если уничтожишь контейнер - то конфиги останутся.
если тебе принципиально надо, чтобы эти конфиги были и в текущем хосте - то сделай по крону каждую секунду копировать конфиги за volume в твой текущий контейнер

Alexey
30.05.2017
11:36:15

Эмиль
30.05.2017
11:36:30
подключись к контейнеру и скопируй дефолтные конфиги

Alexey
30.05.2017
11:37:12
Вот, об этом я и говорю. Неужели нет иного способа?

Konstantin
30.05.2017
11:37:35
из образа он не копирует содержимое

Alexey
30.05.2017
11:38:16

Konstantin
30.05.2017
11:38:21
всё верно, копируй конфиги, потом делай бинд
нет, не изменить

Alexey
30.05.2017
11:39:01

Эмиль
30.05.2017
11:39:06
а зачем менять поведение?
найди смысл в этом

Alexey
30.05.2017
11:39:20

Konstantin
30.05.2017
11:39:24
то что ты делаешь удобно - не означает что это верно
а в чем собственно проблема?

Alexey
30.05.2017
11:40:17

Эмиль
30.05.2017
11:41:11
Не удобно
ну тогда пользуйся другим инструментом
просто ради «неудобно» никто ничего менять не будет
объясни задачу - и тебе дадут 1000 способов как ее решить правильно в рамках модели контейнеров

Google

Alexey
30.05.2017
11:41:47
а в чем собственно проблема?
Просто считаю нелепо, что мне нужно с хоста подсунуть конфиги для службы заранее. А если дефолтный конфиг можно получить только при установки службы?

Эмиль
30.05.2017
11:42:08

Alexey
30.05.2017
11:42:31

Эмиль
30.05.2017
11:43:03
ну сделай sh скрипт

Alexey
30.05.2017
11:43:22
ну сделай sh скрипт
Ну костыли же... Хотя придется делать так, если иного способа нет. Я затем и обратился, что не понимал насколько это нормальное поведение.
Странно, что до меня никто в этом не нуждался...

Эмиль
30.05.2017
11:45:19
ты путаешь понятия инструмент/задача/решение
не вижу смысла объяснять короч

Alexey
30.05.2017
11:45:44

Konstantin
30.05.2017
11:48:18
всё верно тебе говорят
нужно придерживаться каких-то норм и паттернов

Konstantin
30.05.2017
11:49:02
если конечно ты Дартаньян, то можно составить вразумительное issue
я на этот вопрос не раз натыкался в issue Docker и около, и всегда это было скажем так из-за неправильного подхода к задаче
я 2й использую

Alexey
30.05.2017
11:53:40
Спасибо

Mikhail
30.05.2017
13:48:47
Господа, день добрый. Собсно, вопрос такого содержания, ежели никого сильно не перегружу:
Есть у нас регистри с которого я спулил месяца три назад имеджи проектов и удачно про него запамятовал. Но сегодня случилось так, что пришлось делать pull, в ответ на который я получил хамское Error response from daemon и x509: certificate has expired or is not yet valid
Подскажите, как наказать демона?

Pasha
30.05.2017
13:52:36

Mikhail
30.05.2017
13:52:55
мерси, почитаю

Google

Mikhail
30.05.2017
15:36:35
дело было не в бабине

Bogdan (SirEdvin)
30.05.2017
15:49:10

Eugen
31.05.2017
06:19:17
Если не трудно, намекните, как можно сохранить файл в директорию хоста без -v

Admin
ERROR: S client not available

Artem
31.05.2017
06:29:42
Никак, либо поднимать в контейнере ssh/ftp и через них копировать

Eugen
31.05.2017
06:40:18
Спасибо, я неправильно задачу понял.

Evgenii
31.05.2017
06:40:45

Eugen
31.05.2017
06:40:48
Монтирование нужно было, но из dockerfile, а не через -v

Artem
31.05.2017
07:02:38
Из докерфайл это скорее не монтирование, а добавление в образ

Dmi3y
31.05.2017
07:12:57
В докерфайле можно объявить volume
Тогда такой volume будет создан на хосте "безымянным" при запуске
Удобство извлечения из него файлов под вопросом, но если очень хочется без -v и cp, то вполне зайдёт

Asan
31.05.2017
09:22:43
Привет, а кто-нибудь знает где логи docker daemon посмотреть на маке?
в ~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/log почему-то пусто

Bogdan (SirEdvin)
31.05.2017
09:43:29

Dmitry
31.05.2017
10:11:35
Первая дира смаппена в папку на маке
вторая просто папка в контейнере
третяя 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

Konstantin
31.05.2017
10:25:08

Dmitry
31.05.2017
10:30:48
да, я уже начал использовать docker-sync для кода, мапить mysql/data тоже было ошибкой, думаю перенесу на volume

Konstantin
31.05.2017
10:43:41
настравил ночью автодеплой gitlab-ci -> swarm
возник вопрос по jwilder/nginx-proxy, чуть позже нашёл ответ в Issue docker и автором оказался я ))
помогал кому-то ранее, в итоге и себе помог :D

Asan
31.05.2017
10:46:03
В виртуалке же, нет?
о точно, если кому ещё понадобится
screen ~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/tty

Google

Asan
31.05.2017
10:46:31
и там /var/log/{docker,daemon}.log

Alexey
31.05.2017
13:40:10

Dmitry
31.05.2017
15:08:42
Есть вот такой способ создать 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:

Konstantin
31.05.2017
15:29:41
его объявить ещё нужно
volumes:
mysql-data:
driver: local
volumes:
xdebug-data:
driver: local
это равносильно команде - docker volume create —name xdebug-data
объявление вне сервиса, глобально для всего compose файла

Dmitry
31.05.2017
16:08:49
да я объявил, только внутри volume не было изменений после command:

Никита
31.05.2017
16:31:32
Друзья, кто верхнеуровнево опишет как реализовать такую схему. Есть IP, подключаешься к http://[ip]/ получаешь инфу с веб сервера1, по адресу http://[ip]/foo идет обращение на веб сервер2, по порту [ip]:5432 идёт доступ по ssh на сервере3. Примерно такая схема но количество серверов десятки. Как реализовать, куда копать? Интересует в 1 очередь архитектура решения. Есть требование к безопасности, чтобы изнутри каждого сервиса не было доступа наружу (отсюда есть смысл заморочиться с докером)