@ru_docker

Страница 155 из 610
Yegor
20.09.2016
14:15:36
>Кто что думает о правильности маунтинга на проде? Легально ли? Или на проде всё должно быть внутри image? По хорошему в самом докерфайле не стоит маунтить volume. Лучше сделайте себе два конфига docker-compose, один для прода, один для дев енвайронмента и во втором уже прописываете volume с сырцами.

типа docker-compose up -f development.yml

Dmitry
20.09.2016
14:22:57
смотря что маунтить

Yegor
20.09.2016
14:23:42
Я так понимаю речь шла о сырцах, потому что автор комментария как-то стыдился этого.

Google
N
20.09.2016
14:25:20
зачем маунтить исходники, если весь смысл контейнера в иммутабельности

Yegor
20.09.2016
14:25:57
Многие разрабы на скриптовых языках так делают чтобы не терять интерактивности

N
20.09.2016
14:26:16
ну не в продакшене же

в продакшене вообще никакой интерактивности быть не может

Alex
20.09.2016
14:27:30
А как насчет файлопомойки/хранилища для бд? Их принято маунтить с хоста?

Yegor
20.09.2016
14:27:41
Да

Посмотрите имадж PostgreSQL

например

Artur
20.09.2016
14:27:51
подскажите, я правильно понимаю, что когда я у демона выключаю iptables, мне нужно самому разруливать NAT в iptables? стандартных правил для заворачивания в подсеть (и из подсети) для docker0 не будет создаваться?

Dmitry
20.09.2016
14:27:59
@netoneko всё верно говорит

Yegor
20.09.2016
14:28:03
иначе при перезапуске контейнера данные исчезнут

Dmitry
20.09.2016
14:28:05
в продакшн образ это вещь в себе

сырцы должны быть в нём. Маунтить их следует на дев-енвах

Google
Artemiy
20.09.2016
14:28:18
На самом деле, вопрос о том, маунтить ли конфиги и TLS сертификаты :D

Artemiy
20.09.2016
14:28:53
Вот, мне кажется, что это не очень правильно

Dmitry
20.09.2016
14:28:56
смотря какие конфиги :)

N
20.09.2016
14:28:57
если они не задаются через env variablesm то выхода нет

Artemiy
20.09.2016
14:29:16
В image их запечь

Dmitry
20.09.2016
14:29:23
да, лучше всего через енвы их подать контейнеру

Yegor
20.09.2016
14:29:24
А почему при билде нельзя их в засунуть?

Dmitry
20.09.2016
14:29:30
чтобы образ про них ничего не знал

N
20.09.2016
14:30:17
В image их запечь
и сложить на докерхаб?

как-то не очень идея

да и вообще один образ должен работать во всех условиях

Artemiy
20.09.2016
14:31:04
Нет, если docker-registry свой

N
20.09.2016
14:31:07
и стейджинг, и продакшен

ну если свой, то можно в build args сунуть, например

Artemiy
20.09.2016
14:31:27
N
20.09.2016
14:31:29
но тоже непонятно, зачем

при изменении конфигурации пересобирать образ - странный подход

сделать редеплой - еще норм

Google
Evgeny
20.09.2016
14:32:26
а как иначе откатиться прозрачно?

у меян - просто деплойнуть прошлую версию

N
20.09.2016
14:32:45
сделать деплой со старой конфигурацией

Evgeny
20.09.2016
14:33:03
которую возмешь откуда?

N
20.09.2016
14:33:11
так смена конфигурации и смена образа - разные вещи

код-то ты не поменял

с чего бы образу меняться

Evgeny
20.09.2016
14:33:30
и что? настрйоки то поменял - а они в образе

или что поразумевается под настрйокаи?

N
20.09.2016
14:33:45
а почему они в образе, если они не имеют отношения к коду?

или что поразумевается под настрйокаи?
ну например таймаут какой-нибудь поменял с 5 до 10 секунд, адрес базы, credentials

у тебя разные образы для стейджинга и продакшена? зачем, например?

Evgeny
20.09.2016
14:35:07
если это как-то затрагивает контейнер - таймаут например 0 я пересоберу новую версибю

у тебя разные образы для стейджинга и продакшена? зачем, например?
для стейджинга и прода - нет. а это как связано?

N
20.09.2016
14:35:40
тогда у нас недопонимание

Evgeny
20.09.2016
14:35:43
у меня на стейдже полностью повтороена среда прода только база другая и меньше инстансов

N
20.09.2016
14:35:56
где хранится адрес базы, например?

не внутри контейнера же

Evgeny
20.09.2016
14:36:12
в сырцах. и выглядит он как mongo.discovery

N
20.09.2016
14:36:16
аа

Google
N
20.09.2016
14:37:32
ну у тебя другой подход просто, один образ, а настройки отданы на откуп дискавери, а не передаются явно

Evgeny
20.09.2016
14:37:54
я вдруг понял о чем ты, да, у нас недопонимание.

Admin
ERROR: S client not available

N
20.09.2016
14:38:08
я говорил про другой случай, когда настройки передаются явно, тогда они должны быть в виде env variables или примонтированного конфига

Evgeny
20.09.2016
14:38:33
лучше как енв имхо

N
20.09.2016
14:38:45
ну естественно

но не все приложения поддерживают

Artemiy
20.09.2016
14:38:50
Да, такие настройки, в env

А например virtual hosts в nginx?

Evgeny
20.09.2016
14:39:05
ну вот у меня есть нгинкс

я передаю ему настройки резолвера энвами. при запуске он собирает верный конфиг башем и запускается

N
20.09.2016
14:39:46
да, отличный подход

Павел
20.09.2016
15:24:47
Коллеги, немного не по теме, но по теме =) Я тут конвертировал unix timestamp (1474384973), и с ужасом осознал, что он начинается аж с 14. И понял, что отчетливо помню timestamp'ы примерно с 12... х. А кто какие помнит? ;)

Быстрый расчет показывает, что одна цифра в этой позиции равна примерно 3 годам =)

Pavel
20.09.2016
15:26:11
Я помню 1234567890

Это был первый и последний раз когда я вообще обращал внимание на цифры в таймстампе

А еще кажется было время Пи 1415926..

Andrey
20.09.2016
15:31:52
а ещё они кончатся

Lad
20.09.2016
16:40:29
https://habrahabr.ru/company/hexlet/blog/248519/ Кто подскажет, это еще актуально или там подкрутили уже в докере?

Evgeny
20.09.2016
16:40:51
Актуально

Google
Lad
20.09.2016
16:42:25
Актуально
а как решаете?

как в статье?

Evgeny
20.09.2016
16:43:00
Я уже не помню как там. Я решаю просто - держу один процесс в контейнере

А если нужно несколько - всякие смеллбароны и тд

Phil
20.09.2016
16:48:05
И нет движения по этому вопросу?

Evgeny
20.09.2016
16:55:56
Они говорили вроде что не хотят

Можно мейнтейнера спросить

Alex
20.09.2016
17:24:32
Братва, это официальное сообщество?

Evgeny
20.09.2016
17:24:44
Ходят слухи

N
20.09.2016
17:26:28
а как решаете?
один контейнер - один процесс

или supervisor какой-нибудь, но зачем

Страница 155 из 610