@docker_ru

Страница 1087 из 1375
Anatoliy
04.03.2019
19:14:19
задача какая?
задача - писать код и не думать что там как крутится. но для начала мне надо разобраться с этим свармом. ну и с traefik'ом. Нельзя скалировать без нескольких нод - фиг с ним, это - не критично. А вот то что у меня TeamCity Agent не цепляется к TeamCity Server'у - плохо. И я не понимаю почему оно так.

Sergey
04.03.2019
19:15:05
а киньте чем то почитать про джокер, сигналы, энтрипоинт и тд. что сейчас стильно-модно-молодежно ? gosu или с dumb-init можно жить? Собственно ищу варианты как запускать "демоны" которые запускаются как "интерпретатор /путь/к/скрипту", демон выполняет некую джобу и умирает. Далее нужно его перезапустить что бы он мог начать выполнять следующую джобу. Если кто то решал подобный кейс могу подробно написать. Проблема на стыке gracefull stop приложения, указания опции что docker stop signal=SIGTERM и docker restart policy=ALWAYS. Приложение в нормальной ситуации нужно корректно включать. При деплое происходит "конфликт" между restart polisy always и командой docker stop. Контейнер запускается с энтрипоинтом который из себя представляет sh скрипт с командой. И вот вопрос, ловить в энтрипоинте трапами сигналы или взять какое-то готовое решение. Очевидно что "проблему" решит использование супервизора, но я не хочу делать потом кучу воркараундов для того что бы контейнеры с супервизором ожидаемым образом себя вели.
куча статей на хабре не за что

Gleb
04.03.2019
19:15:39
куча статей на хабре не за что
прочитал. костыли на костылях. спасибо

George
04.03.2019
19:15:54
а киньте чем то почитать про джокер, сигналы, энтрипоинт и тд. что сейчас стильно-модно-молодежно ? gosu или с dumb-init можно жить? Собственно ищу варианты как запускать "демоны" которые запускаются как "интерпретатор /путь/к/скрипту", демон выполняет некую джобу и умирает. Далее нужно его перезапустить что бы он мог начать выполнять следующую джобу. Если кто то решал подобный кейс могу подробно написать. Проблема на стыке gracefull stop приложения, указания опции что docker stop signal=SIGTERM и docker restart policy=ALWAYS. Приложение в нормальной ситуации нужно корректно включать. При деплое происходит "конфликт" между restart polisy always и командой docker stop. Контейнер запускается с энтрипоинтом который из себя представляет sh скрипт с командой. И вот вопрос, ловить в энтрипоинте трапами сигналы или взять какое-то готовое решение. Очевидно что "проблему" решит использование супервизора, но я не хочу делать потом кучу воркараундов для того что бы контейнеры с супервизором ожидаемым образом себя вели.
щито?

Google
George
04.03.2019
19:16:11
я не понимаю, что тебе мешает навернуть супервизор снаружи докера

пускай тупо перезапускает контейнер. Или я не понял, что ты хочешь

Anatoliy
04.03.2019
19:16:40
При этом тот же TeamCity Server тоже не может достучаться до git'а который лежит на том же сервере рядом. Обращаюсь по внешним адресам, т.е. по tc.example.com и т.п., не хочет(

Anatoliy
04.03.2019
19:17:30
George
04.03.2019
19:17:46
ну, больше деталей надо

я не понимаю, что ты хочешь от тимсити

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

или ты все через прокси пускаешь? ну, тоже такое себе решение

Anatoliy
04.03.2019
19:18:48
вот есть ощущение что именно с фаерволлом и проблемы. но так да, сейчас там все через прокси

изнутри кстати по именам контейнеров запустить получилось вроде, а вот именно снаружи - нет(

Google
George
04.03.2019
19:23:41
файрволл отключи и посмотри

Gleb
04.03.2019
19:28:30
пускай тупо перезапускает контейнер. Или я не понял, что ты хочешь
не хочется такого изврата. у меня есть универсальный ci/cd который позволяет без изменений 95% кода деплоить сотню разных проектов. Я не думаю что было бы нормально делать исключение для одного проекта, поэтому ищу более универсальное решение.

George
04.03.2019
19:29:21
«При деплое происходит "конфликт" между restart polisy always и командой docker stop.»

кажется въезжаю

смотри

мы решили эту проблему как

никто не мешает тебе поставить полиси always на рестарт

просто в момент деплоя форсированно грохнуть контейнер - не?

ну, либо действительно костылить что-то

и, да, тебе лучше политика unless-stopped, кмк

и еще соображение. в случае передеплоя apache airflow мы тупо делали следующее: 1. смотрели есть ли сейчас джобы 2. если есть - тупо ждем их окончания, но запрещаем спавнить новые 3. как только джобы завершились - катим обновления

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

в пайплайне он ставится как файл, который маунтится в контейнер. Если файл есть - СТОП

если нет - продолжаем бежать

реализуется просто )

Gleb
04.03.2019
20:20:00
ну я вот пододбные мысли и хотел увидеть, спасибо. Вариантов то масса конечно, вплоть до смены полиси на-лету

Yan
05.03.2019
07:45:42
ребят, подскажите, кто-нибудь сталкивался с подобной проблемой: использую gitlab ci чтобы сбилдить образ, в докерфайле присутствует curl, который должен загрузить архив с imagemagick и собрать его, но вот как раз на моменте со скачиванием curl минуту пытается достучатся на нужный урл и выдает curl: (56) Recv failure: Connection reset by peer

и я не могу понять, это проблема докера или курла в образе docker:stable

на локалке и впс все нормально скачивается и билдится без вопросов

Google
ildar
05.03.2019
07:50:35
сокращай количество неизвестных. перенеси скачивание с момента build на момент run. лучше выбери образ, в котором уже есть curl ;)

$ docker run docker:stable curl /usr/local/bin/docker-entrypoint.sh: exec: line 35: curl: not found

Yan
05.03.2019
08:28:15
$ docker run docker:stable curl /usr/local/bin/docker-entrypoint.sh: exec: line 35: curl: not found
там немного в другом дело, я собираю из докерфайла образ из node:10

там есть curl как раз, но, как я понимаю, он не может достучаться до архива

ща кину

https://gist.github.com/yanislav-igonin/57f50eaa3e9387c5d3fc57ea8647f266#file-production-dockerfile

ildar
05.03.2019
08:30:26
о, сейчас бы в чужих Dockerfile поразбираться почему curl не рабоает)

docker run --rm -ti alpine wget your_link_here

Yan
05.03.2019
08:30:53
о, сейчас бы в чужих Dockerfile поразбираться почему curl не рабоает)
в том-то и дело, что не работает он только в ci

локально и на впс все без проблем скачивается

я поэтому и спрашиваю, может это фича гитлаба какая-то

ildar
05.03.2019
08:33:21
запусти в ci команду которую я скинул

Yan
05.03.2019
08:35:22
есть пара вариантов уже, как это обойти, один вы как раз и предложили, скачивать в другой стадии и передавать, другой это просто собрать образ с imagemagick в докерхаб без кода аппки, а на стадии билда собирать из этого образа

ildar
05.03.2019
08:36:05
тебе обойти надо или проблему решить?

Дмитрий
05.03.2019
08:41:12
Кто может подсказать, в kubernetes падают поды на ноде, load average 10, непонятно что съело весь проц.

Google
Stefan
05.03.2019
08:44:45
Дмитрий
05.03.2019
08:47:10
а мониторинг? а зайти на ноду и через htop поглядеть чего там
мониторинг накрылся на так-как на ноде живет prometheus

Stefan
05.03.2019
08:47:40
мониторинг накрылся на так-как на ноде живет prometheus
знач только в htop и сортировать по cpu

и да, la не только от cpu зависит

а еще и от трафика и дисков

Baurzhan
05.03.2019
08:52:51
Спасибо решил

Дмитрий
05.03.2019
09:03:46
@kubernetes_ru
Спасибо!

Yan
05.03.2019
09:04:28
@ru_gitlab
благодарочка, вступлю)

Dmitry
05.03.2019
09:31:32
День добрый. Подскажите, я могу из неработающего контейнера (не запускается) вытащить файл?

George
05.03.2019
09:34:33
да

docker commit & docker save и полетели

дополнительно вся файловая система контейнера живет где-то в /var/lib/docker

Kirill
05.03.2019
09:35:04
Dmitry
05.03.2019
09:36:46
Спасибо)

George
05.03.2019
09:37:48
запусти его с "sleep 10000" и делай с ним что хочешь ;)
твой совет плохой. как он запустит его, если у него контейнер неработающий?

это ж не образ (!)

Юра
05.03.2019
10:00:16
ildar
05.03.2019
10:20:45
lifehack - есть sleep infinity )
1. часто sleep inf достаточно 2. в busybox|alpine нет такого :(

Google
ildar
05.03.2019
10:24:28
ещё есть tail -f /dev/null но стоит почитать комменты https://unix.stackexchange.com/questions/42901/how-to-do-nothing-forever-in-an-elegant-way

Viktor
05.03.2019
10:29:02
tail -f /bin/bash тоже норм

Dmitry
05.03.2019
10:35:55
tail -f /bin/bash тоже норм
в alpine не работает

George
05.03.2019
10:38:38
в alpine не работает
Там баша нет

Dmitry
05.03.2019
10:39:04
Там баша нет
о чем и речь)

George
05.03.2019
10:39:25
Сделай на /bin/sh

Делов то

Dmitry
05.03.2019
10:40:24
Сделай на /bin/sh
да я уже все сделал, просто ответил на коммент)

foi
05.03.2019
11:29:11
Dmitry
05.03.2019
11:29:50
ash
да, куча вариантов, /bin/sh ash и т.д. в любом случае уже не актуально) помогло sleep

Yurii
05.03.2019
12:14:47
добрый день

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