Docker, контейнеры MongoDb change-streams --- наблюдение за контейнерами
У меня есть приложение, работающее на нескольких док-контейнерах. Каждый API имеет свой собственный контейнер. Мы используем MongoDB в качестве нашей базы данных на нашем сервере Node.js и хотели бы использовать поток изменений для прослушивания изменений в базе данных и для кода в одном контейнере, чтобы заставить другой API другого контейнера "что-то делать" также.
Другими словами, мы хотим, чтобы container-a
обновить базу данных, пока container-b
слушает изменения, вызванные container-a
а затем вызвать container-c
выполнить свой набор изменений. В настоящее время происходит то, что при запуске docker-compose up
код из container-b
будет работать один раз, но не будет прослушивать изменения в container-a
,
Это похоже на проблему с докером и поиском того, как получить container-b
код для запуска, когда container-a
вносит изменения в БД, я должен также отметить, что изображение в container-b
а также container-c
подобные". мой docker-compose.yml
выглядит следующим образом:
container-a:
build:
context: "../packages/container-a"
args:
- NPM_TOKEN
image: container-a
container_name: container-a
ports:
- "3030:3030"
- "13030:9229"
entrypoint:
- pm2
- start
- server.js
- --no-daemon
- --watch
- --node-args="--inspect=0.0.0.0:9229"
container-b:
build:
context: "../packages/container-b"
args:
- NPM_TOKEN
image: api-chart
container_name: container-b
ports:
- "4010:3000"
- "14010:9229"
entrypoint:
- pm2
- start
- server.js
- --no-daemon
- --watch
- --node-args="--inspect=0.0.0.0:9229"
container-c-watch:
build:
context: "../packages/container-b"
args:
- NPM_TOKEN
image: container-b
container_name: container-c-watch
ports:
- "14011:9229"
entrypoint:
- pm2
- start
- lib/streams/index.js
- --no-daemon
- --watch
- --node-args="--inspect=0.0.0.0:9229"
На этом этапе любая идея о том, что могло бы сделать эту работу с нашим потоком изменений, была бы великолепна, видя, как я свежа из идей.
Спасибо заранее!