Отказ от ответственности: это очень самоуверенный ответ, но автор спрашивает мнение.
Вы можете сделать один или два, но все зависит от того, как вы хотите запланировать это.
Если вы хотите сохранять гибкость в отношении количества процессов, которые вы хотите для каждого, я бы go с двумя docker изображениями, в противном случае вам нужно будет каждый раз вращать фиксированное количество каждого или вам потребуется отрегулируйте эту настройку с помощью переменных env или с помощью других средств ...
Следовательно, один для части внешнего интерфейса и один для фонового процесса.
Поскольку у вас есть два разных изображения, я обычно предпочитаю отделить это в двух разных проектах, но это дело вкуса. Хотя из-за того, как NodeJS управляет зависимостями (node_modules
), проще иметь две разные папки, когда зависимости сильно различаются.
Я бы go со следующим:
.
├── docker-compose.yml
├── front
│ ├── Dockerfile
│ ├── node_modules
│ ├── package.json
│ └── src
│ └── main.js
└── worker
├── Dockerfile
├── node_modules
├── package.json
└── src
└── main.js