Worker containers for applications
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 37.4k
- Forks
- 3k
- Avg merge
- 1d 3h
- Merged PRs (30d)
- 73
Description
What problem will this feature address?
I like to add "workers" to an application that handle load, e.g., when following a command bus pattern.
Workers use the same codebase / build but have a different a different start command (eg., not running web server, but a script that performs actions).
Currently you cannot use the same build for different applications. Deploying app + worker woudl require building the code twice. Thats an overhead.
Workers stop after X minutes to prevent memory flooding. Docker Swarm can handle the recovery.
Describe the solution you'd like
I like this interface from Upsun:
Workers should be able to be "attached" to an application. They inherit the build and volumes. You should be able to override env vars for instance and docker swarm settings. They dont need domain attachments.
Describe alternatives you've considered
As a workaorund, you can create a new application (using the same codebase) but different start command (e.g. RAILPACK_START_CMD).
Additional context
No response
Will you send a PR to implement it?
No
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The issue names no files, tests, or entry points. Begin by reviewing how applications, builds, volumes, start commands, environment variables, and Docker Swarm settings are currently represented; done would support attached workers that inherit the build and volumes while allowing overrides and independent start commands.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- docker, typescript
- Domain
- devops, infrastructure
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100