Search code examples
sidekiqcapistrano3

How do I deploy sidekiq on non-app server?


We have a working app and use capistrano for deploys.
We use the capistrano-sidekiq gem to deploy sidekiq with our app instances.

It 'just works'.

Now our hosting provider is insisting we run sidekiq on separate machines.

This would require us to:
1. use the Capistrano roles mechanism to specify what machines should run sidekiq.

and also:
2. configure capistrano to not start sidekiq on the non-sidekiq machines, and
3. deploy the rails code but not start rails on the sidekiq machines.

I can't seem to find documentation that would help for any of those points. How can I do this, or what resources might help?


Solution

  • You want to customize capistrano-sidekiq's sidekiq_role option.