Tadeusz
разрабы медленные, всегда.
Sebor▂▅▇█▓▒░
tfhx8
народ, кто на питоне пишет, вы скрипты в докер оборачиваете или хватает виртуаленва?
tfhx8
От задачи зависит
я просто не совсем понимаю, когда надо оборачивать, а когда достаточно виртуаленва. Просто мне кажется если под докер делать, то отлаживать скрипты не просто будет
Sebor▂▅▇█▓▒░
Если тебе не подходит - то делай по-старинке
tfhx8
просто если к примеру использовать селениум и там вебривер в скрипте если не закрывать, он будет скапливаться и сжирать память, если скрипит запускается десятки раз. Тут наверно виртуаленв не поможет. А с докером просто образ убить и все очистится
Sebor▂▅▇█▓▒░
tfhx8
да
а когда сам скрипт пишите, тестируете его, вне докера?
A⃣lex
В докере можно как то указать чтобы каждая реплика смотрела на свой маунт ?
George
Но ты можешь создать разные контейнеры с разными маунтами
A⃣lex
😢
A⃣lex
Тогда второй вопрос
Sebor▂▅▇█▓▒░
Тоже нет
A⃣lex
Жаль , ну ладно (
A⃣lex
Так и быть задам . Сейчас в докере возможно , что при запуске образа создается маунт с определенным именем ?
A⃣lex
С чистого образа , без конфигов и т.д
A⃣lex
Ты откуда этот вывод сделал ?
чудеса образа компании confluent .
George
Ещё раз вопрос
A⃣lex
запускаешь чистый образ, создается маунт с определенным (человеческим) именем, посмотрел diff образа , там строк 200 похоже на какоето динамическое создание образа
@
Парни, подскажите за такой вопрос, есть rhel72 и при запуске контейнера с nginx и прилой в нутри я ловлю ерор с недостатком прав [s6-init] making user provided files available at /var/run/s6/etc...exited 0. [s6-init] ensuring user provided files have correct perms...exited 0. [fix-attrs.d] applying ownership & permissions fixes... [fix-attrs.d] done. [cont-init.d] executing container initialization scripts... [cont-init.d] done. [services.d] starting services s6-supervise (child): fatal: unable to exec run: Permission denied s6-supervise nginx: warning: unable to spawn ./run - waiting 10 seconds s6-supervise (child): fatal: unable to exec run: Permission denied s6-supervise manager: warning: unable to spawn ./run - waiting 10 seconds аналогичный контейнер на centos7 заводится без проблем, setenforce указан в 0, selinux отключен
A⃣lex
docker inspect покажешь ?
не ближайшее время, но такое сейчас возможно слышал кто?
@
Аналогичный - такой же ? Или ты про rhel / centos внутри контейнера?
один и тот же контейнер запускаю на rhel и centos, на rhel вывод выше, а на центос ок все
@
вот не могу понять куда копать
George
или что-то еще форсит какую-то безопасность, может ядро виновато (оно же разное наверняка)
Tadeusz
я так понял он везде у вас отключен)
Tadeusz
зря вы так)
@
caps' разные видимо
а по подробней можно?)
@
зря вы так)
я его отключил что бы выявить траблу, но трабла явно не в нем
Andrey
а когда сам скрипт пишите, тестируете его, вне докера?
да можно и внутри посмотреть...по разному
tfhx8
да можно и внутри посмотреть...по разному
просто если с докером, то долго получится
Dimitri
Привет всем есть вопрос по Докеру : Как можно передать аргументы в докер имидж чтоб потом можно было им в момент построении воспользоваться .при попытке сделать вот так : docker build -t kuku —build-arg NAME=VASYA —build-arg FNAMe=PETYA А в самом Докер файле : ARG NAME ARG FNAME RUN echo ${NAME} $FNAME В output получаю echo ${NAME} $FNAME а не их value Может я чето не догоняю или не вижу но мне в RUN echo нужно чтоб передалось то что я задаю при build
George
ARG NAME ARG FNAME ENV NAME=$NAME ENV FNAME=$FNAME RUN echo ${NAME} $FNAME
George
как-то так
Dimitri
Отлично спасибо
Евгений
Может тут кто знает... Запускаю одинаковый docker-compose.yml у себя на ПК и на VPS. У меня на ПК всё работает отлично. На VPS получаю эту ошибку. Если на VPS запускаю чисто контейнер rabbitmq, а своё приложение из venv'а, то всё работает нормально. Изначально думал, что проблема в версиях rabbitmq/dramatiq, потом, что в количестве потоков/железе на VPS - настраивал -p 1 -t 1, потом пришёл к выводу, что, возможно, это какое-то ограничение Docker'а на железе на VPS (хотя тоже звучит странно), раз без контейнера работает исправно. Есть ли предположения, что это может быть? Варианты, которые точно отметены: - неверные реквизиты - нехватка памяти - не успевает стартануть rabbitmq (запуск скрипта, который его использует не падает при отсутствии коннекта, а пытается подключиться снова)
George
ты же образ билдишь прямо на впс? не пробовал гарантированно рабочий образ с локальной машины перенести ?
Евгений
George
опять ты!)))
я везде
Евгений
окей, сейчас протестирую, спасибо
Евгений
docker save ... | ssh docker load ... ssh docker-compose up
история повторяется =(
George
значит, дело не в образах, а в окружении
Евгений
мдэмс
Евгений
очень странное дело
Sebor▂▅▇█▓▒░
а вообще другие контейнеры запускаются на впс? базовый рэббит, например
Евгений
а вообще другие контейнеры запускаются на впс? базовый рэббит, например
да, другие крутятся нормально. сам контейнер с кроликом запускается без бубна, а вот контейнер с аппом, который подключается к кролику - не запускается, потому что не может подключится к кролику.
Dimitri
@gecube  не работает ;-(  Странно но вот какой  output я получаю RUN gulp build -m client --wlk ${IP_WHITELIST_CAPTCHA_KEY} --lk $LOGIN_CAPTCHA_KEY При вот такой команде билда docker build -t stil_image --build-arg VERSION=1.1.7-SNAPSHOT --build-arg IP_WHITELIST_CAPTCHA_KEY=foo --build-arg LOGIN_CAPTCHA_KEY=kuku . и вот таком. Докерфайле: ARG LOGIN_CAPTCHA_KEY ARG IP_WHITELIST_CAPTCHA_KEY ENV LOGIN_CAPTCHA_KEY=$LOGIN_CAPTCHA_KEY ENV IP_WHITELIST_CAPTCHA_KEY=${IP_WHITELIST_CAPTCHA_KEY} RUN npm install -g gulp@^4.0.0 bower verdaccio RUN rm -f package-lock.json && \ RUN gulp build -m client --wlk ${IP_WHITELIST_CAPTCHA_KEY} --lk $LOGIN_CAPTCHA_KEY
Николай
Всем привет. Никто не сталкивался с докером в режиме swarm с такой проблемой? Проблема: при развертывании кластера elasticsearch если в yml файле у сервисов указаны healthcheck то кластер не собирается т.к. таски (контейнеры) не могут резолвить друг-друга по имени сервиса. Пробовал заходить в контейнеры и делать пинги. Даже сам себя пинговать не может. Не резолвит имя. Как только выкосил healthchecks все сразу собралось. Причем не обязательно выкашивать все. Достаточно на нескольких сервисах. Я не понял как это работает ( Версия докера: Server Version: 19.03.8 Хостовая система: CentOS 8.1.1911 Firewall: off Selinux: disabled
Max xbim 🌴
В health check есть старт тайм пробовал повышать?
Николай
да. было 45 увеличивал до 245
Николай
проблема в том что умирает именно dns резолвинг
Николай
а пока он не оживет хэлфчек не пройдет в итоге сервисы в бесконечном рестарте
Николай
в параллельном чатике мне один намекнул что это многолетняя бага докера
Max xbim 🌴
Николай
днс по service name
Николай
master1: image: docker.elastic.co/elasticsearch/elasticsearch:7.8.0 environment: - node.name=master1 - node.master=true - node.data=false - ES_JAVA_OPTS=-Xms4g -Xmx4g - cluster.name=t-cluster - network.host=0.0.0.0 - discovery.seed_hosts=master1,master2,master3 - cluster.initial_master_nodes=master1,master2,master3 networks: - esnet volumes: - esmaster1:/usr/share/elasticsearch/data deploy: placement: constraints: [ node.name == node-1 ] endpoint_mode: dnsrr mode: "replicated" replicas: 1 resources: limits: memory: 5G master2: image: docker.elastic.co/elasticsearch/elasticsearch:7.8.0 environment: - node.name=master2 - node.master=true - node.data=false - ES_JAVA_OPTS=-Xms4g -Xmx4g - cluster.name=t-cluster - network.host=0.0.0.0 - discovery.seed_hosts=master1,master2,master3 - cluster.initial_master_nodes=master1,master2,master3 networks: - esnet volumes: - esmaster2:/usr/share/elasticsearch/data deploy: placement: constraints: [ node.name == node-2 ] endpoint_mode: dnsrr mode: "replicated" replicas: 1 resources: limits: memory: 5G master3: image: docker.elastic.co/elasticsearch/elasticsearch:7.8.0 environment: - node.name=master3 - node.master=true - node.data=false - ES_JAVA_OPTS=-Xms4g -Xmx4g - cluster.name=t-cluster - network.host=0.0.0.0 - discovery.seed_hosts=master1,master2,master3 - cluster.initial_master_nodes=master1,master2,master3 networks: - esnet volumes: - esmaster3:/usr/share/elasticsearch/data deploy: placement: constraints: [ node.name == node-3 ] endpoint_mode: dnsrr mode: "replicated" replicas: 1 resources: limits: memory: 5G
Николай
вот так оно собирается
Николай
healthcheck: test: curl -fs http://localhost:9200/_cat/health || exit 1 interval: 30s timeout: 5s retries: 3 start_period: 45s стоит добавить вот такое в каждый сервис и dns отпадает
Николай
таймауты можно увеличивать хоть до бесконечности, dns от этого не оживает
Николай
но почему то все оживает, если я уберу healthchecks хотя бы из одного сервиса
Levan (Leo)
apt-get update -y / что означает -y ?
Dan
yes
Levan (Leo)
Я хочу с помощью RUN &&\ впихнуть несколько команд. Это нормально или не стоит так делать ?