172 похожих чатов

Как прокинуть идентификатор реплики в переменную окружения контейнера? Мне надо что

бы каждая реплика знала свой номер

docker-compose.yml
version: '3.8'
services:
vosk_cpu_worker:
#scale: 2
deploy:
mode: replicated
replicas: 3
environment:
- WORKER_ID={{.Task.ID}}
build: vosk_cpu_worker

vosk_cpu_worker.py
print('start', os.environ.get('WORKER_ID', 'unknown'))
# out:
vosk_cpu_worker_3 | start {{.Task.ID}}
vosk_cpu_worker_2 | start {{.Task.ID}}
vosk_cpu_worker_1 | start {{.Task.ID}}

11 ответов

12 просмотров

из переменных окружения надо вот так ${козявка}

Alex-Yurasov Автор вопроса
Nazar
из переменных окружения надо вот так ${козявка}

Это что бы прокинуть одну переменную с хоста во все экземляры. Это я могу, но нужно немного другое. Экземпляров будет 20. deploy: mode: replicated replicas: 20 Каждый будет брать свою очередь в SQL. Нужно что бы каждый экземляр знал свою очередь. Например при исполнении print('start', os.environ.get('WORKER_ID', 'unknown')) Ответ ожидается примерно таким: vosk_cpu_worker_1 | start 0 vosk_cpu_worker_2 | start 1 ...

Alex-Yurasov Автор вопроса
Alex Yurasov
Это что бы прокинуть одну переменную с хоста во вс...

Придётся делать генератор docker-compose файла, в котором будут перечислены все экземпляры отдельными сервисами🤔

Так только swarm умеет

Alex-Yurasov Автор вопроса
Максим Мартынов
Так только swarm умеет

Вот я подозревал! Благодарю. Буду swarm учить в пн

Alex-Yurasov Автор вопроса
Максим Мартынов
А надо? Какие масштабы нужны?

Масштабы небольшие. 20 процессов будут конвертить файлы и отправлять их на удаленный сервер, потом складывать данные в скуль Если вымирающий, то есть у меня еще вариант брать id поочередно блокируя файл из volume. Правда застрял на какой то детской проблеме PermissionError: [Errno 13] Permission denied при попытке прочитать файл даже единственным экземпляром. Обычно это лечится - через поспать

Alex Yurasov
Масштабы небольшие. 20 процессов будут конвертить ...

Лечится через chmod или правильного пользователя в контейнере

Alex-Yurasov Автор вопроса
Максим Мартынов
Лечится через chmod или правильного пользователя в...

chmod уже и на хосте пробовал и в Dockerfile бестолку

Похожие вопросы

Обсуждают сегодня

А как старый хаскел с новым стыковать ? потому как тут работает https://play.haskell.org/saved/C3xpMzcd, а вот тут https://stepik.org/lesson/7602/step/9?unit=1473 нет ошибка C...
Fedor
131
Вопрос я правильно понимаю что в коде newtype ArrowMap k v = ArrowMap { getArrowMap :: k -> Maybe v } getArrowMap есть функция типа k -> Maybe v, если да, то не понимаю задач...
Fedor
61
Продолжая диалог про свифт в проде – сейчас возник вопрос в активном наборе бекендеров. В основном в нашей компании мы фанаты Java Spring и полностью ей довольны. Однако найм ...
Guseyn
27
Как Вы считаете нормально ли в двадцатых годах 21 века в ВУЗах Российской Федерации обучать студентов работе с TASM? Не слишком ли это "архаично"? (Если оффтоп или флейм для э...
Spiker01
52
Комрады, хотел уточнить. Проперть в OnDestroy юнита-хозяина по-прежнему доступна? И еще уточнение: finalization юнита наступает раньше или позже OnDestroy?
Ed Doc
48
Привет всем. Не знаю, удачный ли чатик я выбрал для вопроса, но он как будто в целом про концепцию фп и конкретно про Haskell. Прочитал, что в целом в мире фп нет идеи мутабел...
Gellert Cringewald
15
Читаю сейчас [нет, уже больше не читаю!] курсовую о Булгакове, написанную, похоже, с помощью ChatGPT. Это удивительный психоделический опыт. Текст в основном написан в стиле б...
✨ Uni [🌊 В отпуске]
1
Всем привет! поделитесь, пож-та, как кто дебажил / решал проблему с 504 Time out ошибкой от nginx, когда стучишься на свой vapor сервер? в логах /var/log/nginx/error.log е...
Paul
24
Как добавить ссылку в Быстрый доступ в Проводнике windows 10? Нашёл, как на power shell сделать, но может есть способ через Дельфи?
А
31
@helgispbru @Dreamer_0x01 @Pathologic93 @webber_12 Не уверен, что вам всем это жутко интересно, но в продолжение недавнего диалога отправлю свои наброски. Хочу понять, правил...
Андрей [aharito] Харитонов
13
Карта сайта