@docker_ru

Страница 120 из 1375
Andrey
27.03.2017
08:29:10
если докеру сказать просто порт, мне кажется он сам сопоставит рандомный порт из контейнера на выставленный наружу

это более предсказуемо и более прозрачно для фаервола иметь зафиксированный порт

Nikolay
27.03.2017
11:20:12
сильно костыльно? )
очень :) Обычно для этого используют сервис-дискавери. Consul, etcd, zookeeper... или польщуеются дискавери механизмами swarm/kubernetes, если они используются.

Igor
28.03.2017
03:11:42
Привет всем, ни кто не сталкивался в диджитал оушене с такой проблемой докера: level=error msg="More than 100 concurrent queries from 172.25.0.3:58995" у меня множество контейнеров на одном хосте, и они все шлют много логов на удаленный сервер graylog, то есть у всех контейнеров выставлен лог драйвер glef как я понял меня не хочет обслуживать гугловый днс, потому что именно он стоит как дефолтный в /etc/resolv.conf Изза того что контенеры выжирают днс лимиты, сами сервисы внутри контейнеров начали испытывать проблемы, не могут достучатся например до внешних апи, потому что днс не ресолвится

Google
I
28.03.2017
03:29:13
откуда такой вывод? что ты съел лимиты google dns?

Igor
28.03.2017
03:31:07
а все разобрался, у меня консул юзается, сервисы бэкэнда в нем регаются, но при деплои когда их контейнеры убиваются, они не удаляют себя из консула, в итоге тот продолжает пытаться до них достутчатся, за месяцок активной разработки и кучи деплоев, в консуле скопилась толпа этих сервисов, и в итоге он по всем ним пытался долбить, в результате выжирал днс лимиты, так как докер не мог найти контейнер по имени и перенаравлял запрос в днс

Denis
28.03.2017
06:25:24
Кто уже настраивал? https://blog.docker.com/2017/02/docker-secrets-management/

Nikolay
28.03.2017
08:29:51
что это за спам?!

Anton
28.03.2017
08:30:39
бляяя, я тебя умоляю, удали это говно сам

Nikolay
28.03.2017
08:31:00
и себя заодно, друг.

Pavel
28.03.2017
08:48:33
и себя заодно, друг.
...и убейся об стену.... тут про докер общаются, при чем тут эта жерня

Anton
28.03.2017
09:01:26
ну ало народ, это же робот. покупается sim-коробка на 120 симок, покупается 120 симок на савеле или в украине - и вперед, спамить

kiltum
28.03.2017
12:19:53
Меня все время интересовало, насколько успешен такой спам. Или люди настолько идиоты, что до сих пор ведутся?

Andrey
28.03.2017
12:22:22
ну че вы так сразу, мощный бизнес от инфобизнесменов или от бизнес-молодости

они вовремя подскочили, телеграммы начали устанавливать даже домохозяйки

сто обманутых старушек - один рубль!

Anton
28.03.2017
12:23:23
Мощный бизнес это когда ты делаешь сервис прокси-рекламы - когда каждый send_message в телеграмме дописывает какую то рекламу прозрачно для бота

Google
Denis
28.03.2017
12:24:19
Сигнальте громче, если что)

Andrey
28.03.2017
12:24:52
Signal не сертфицирован ФСБ

слишком защищенный как и Threema

Pavel
29.03.2017
11:29:46
Добрый день, коллеги. Не подскажите, имеется три контейнера запускающихся через docker-compose. Вопрос в их правильном бекапе. Правильно ли будет остановить каждый из них через docker-compose stop и забекапить каждый по отдельности через docker commit?

Oleg ?
29.03.2017
11:35:50
всю систему чтоль хочешь бэкапить?

правильнее волюмы создать внутрь в нужные папки\файлы

и уже бэкапить волюмы если уж так надо

Andrey
29.03.2017
11:59:12
бэкап докера звучит странно

докер создан чтобы умирать)

ну если хочется извращений, то лучше всего сделать отдельный дата-сервис и бекапить его, вольюмы достаточно проблематично доставать

Pavel
29.03.2017
12:00:59
Три контейнера: nginx, postgres, nbox фронтенд. Хочу что бы база была забекаплена как минимум...

Andrey
29.03.2017
12:01:27
бекапить нгинкс смысла нет

постгре можно бекапить снаружи

фронтенд максимум содержит фолдер с аплоадами, больше там бекапить нечего

Pavel
29.03.2017
12:02:18
Nginx если конфиги не менял, то да, нет смысла бекапить. А зачем снаружи?

чем docker commit не катит?

Andrey
29.03.2017
12:02:35
чтобы не останавливать, можно настроить реплику

Pavel
29.03.2017
12:03:04
А если остановка для сервиса не критична? Разве бекап контейнера не является более правильным вариантом?

Andrey
29.03.2017
12:03:32
вся суть докера в том, что у него фс с ревизиями

Google
Andrey
29.03.2017
12:03:59
чем больше изменений, тем больше слоев, а это очень интересная игра

можешь попробовать поиграться с docker export/import

Pavel
29.03.2017
12:06:44
дык разве база не в памяти висит? Правильная остановка базы должна положить разницу от предыдущего слоя на диск. Docker-commit сделает снапшот-разницу между прошлым состоянием диска и текущим.

Andrey
29.03.2017
12:08:34
насколько я помню у докера есть дефолтный лимит на память используемую контейнером

Pavel
29.03.2017
12:09:17
А всё что не влезло в своп?

Andrey
29.03.2017
12:10:08
вот на докхабе есть прям образ https://hub.docker.com/r/wetransform/dockup/

Timur
29.03.2017
12:11:20
кто-нибудь использует keepalived? есть смысл его в контейнер сувать и потом с маршрутизацией private-public IP париться?

Anton
29.03.2017
12:32:36
restart: always

Anton
29.03.2017
12:32:38
services: nginx: build: ./nginx restart: always

тнн Itjunky
29.03.2017
12:33:37
О, спс

Andrey
29.03.2017
12:34:12
у докера все еще есть та детская болезнь на запуск зависимых сервисов?

Anton
29.03.2017
12:34:34
Что за болезнь?

Andrey
29.03.2017
12:34:35
помню, делали в докер-композе wait4mysql

потому что вебморда стартовала раньше чем инициализировалась база

Anton
29.03.2017
12:35:07
Есть depends_on: services: nginx: build: ./nginx restart: always depends_on: - data

Andrey
29.03.2017
12:35:15
а не помогает)

Anton
29.03.2017
12:36:00
А, ну наверное база стартует долго, докер запускает процесс - и считает его "запущенным"

Andrey
29.03.2017
12:36:01
это в первый раз, когда мне понадобился restart: always и я его быстро загуглил

Google
Andrey
29.03.2017
12:36:37
но это не спасло от написания скрипта на ожидание

тнн Itjunky
29.03.2017
12:36:37
Andrey
29.03.2017
12:37:09
137 это убийство kill 9

тнн Itjunky
29.03.2017
12:37:36
command: apachectl -f /etc/httpd/conf/httpd.conf -e info -DFOREGROUND restart: always

Для проверки жму ctrl+c

Admin
ERROR: S client not available

тнн Itjunky
29.03.2017
12:38:00
И оно просто умирает по 137

Andrey
29.03.2017
12:38:20
на деле это означает что что-то есть в CMD

и кто-то пытается что-то запустить помимо этого)

Anton
29.03.2017
12:38:41
Вам не нужен restart: always. вам нужен restart: on-failure

тнн Itjunky
29.03.2017
12:38:56
CMD watch netstat -nlpt КОторое не работает вообще

Вам не нужен restart: always. вам нужен restart: on-failure
Оно предполагает ограниченное число перезапусков

Andrey
29.03.2017
12:39:56
а зачем рестарт?

тнн Itjunky
29.03.2017
12:40:55
Чтоб жило всегда же

Andrey
29.03.2017
12:41:51
тогда unless-stopped или что-то в эту степь

Anton
29.03.2017
12:42:17
Чтоб жило всегда же
даже если остановили руками ?

Andrey
29.03.2017
12:42:36
и советую поменять CMD на родное CMD ["nginx", "-g", "daemon off;"]

Anton
29.03.2017
12:42:55
Оно предполагает ограниченное число перезапусков
если у вас все падает надо не подорожник прекладывать рестартом а баги исправить)

Andrey
29.03.2017
12:42:56
оно запускает именно то, что ожидается от контейнера

контейнер не делает магии, если вы пишете свой докерфайл - делайте красиво)

Google
Andrey
29.03.2017
12:44:30
можно еще затюнить и выставить симлинки логов на /dev/stderr

Oleg
29.03.2017
12:50:42
но это не спасло от написания скрипта на ожидание
делал так — разносил по разным композ-файлам и писал фаб таску, которая сначала поднимала первым композ файлом, запускала скрипт, который чекал, все ли поднялось, а потом поднимала вторую часть

увы, красивее не придумалось

тнн Itjunky
29.03.2017
12:56:34
даже если остановили руками ?
Ну какая разница чем? Упало, рестартани, как это делает supervisord

контейнер не делает магии, если вы пишете свой докерфайл - делайте красиво)
Вот за этим я сюда и пришёл.Чтобы подсказали бестпрактис

Anton
29.03.2017
12:59:45
Andrey
29.03.2017
13:09:46
спасибо, но меня и тогда смутило его решение, в проде используется dockerize https://github.com/jwilder/dockerize/

redbeard
29.03.2017
13:57:10
https://cs7051.userapi.com/c638316/v638316370/3a65f/hvJV3S7Dtvg.jpg

Oleg
29.03.2017
14:07:19
https://github.com/vishnubob/wait-for-it
интересный подход. а если мне монгу ждать, то мне дергать 27017 что ли?

интересно, что она ответит когда будет готова

Anton
29.03.2017
14:11:00
интересный подход. а если мне монгу ждать, то мне дергать 27017 что ли?
хз, в монге можно было простой сервис накатать внутри нее? вот когда он ответит тогда норм

ну или просто спрашивать какой нибудь ключ

видел варианты сложнее чем просто ждать порт

Oleg
29.03.2017
14:12:22
мой скрипт чекал логи и ждал строчку конкретную. типа "Ready and waiting for connections on 27017"

Anton
29.03.2017
14:13:02
Костыль - это монга в проде! Все остальное не запрещено)

Страница 120 из 1375