Sidekiq: Sidekiq and Docker

Created on 13 Nov 2014  Â·  9Comments  Â·  Source: mperham/sidekiq

Hi there,

I've doing a bit of search and I couldn't find any documentation about using Docker to deploy Sidekiq.

Can please anyone point me at some resource or share opinions on how is going?

Thanks!

Most helpful comment

@Silex As far as I understand, having one process per container is best practice as it's separating your concerns, provides potentially better resilience (depending on your setup... e.g. better failure over, simpler maintenance, rolling upgrades etc) and doesn't provide any nasty surprises as usually it's 1 process per container.

That being said, I did a bit of reading over the weekend and some people are instead approaching this from a role based angle, aka one container for app which might bundle your Rails/Sinatra process along with your Sidekiq process.

Personally I think that's a bad idea, you want to be able to take down your app/queue separately from each other. The role base approach might make sense in some instances, but with Sidekiq I'd say not.

All 9 comments

A Sidekiq container will require Redis and Ruby as minumim.
The rest will depend on your application specific use of Sidekiq.

Actually you don't need Redis inside the container.

On Nov 13, 2014, at 00:17, Abdelkader Boudih [email protected] wrote:

A Sidekiq container will require Redis and Ruby as minumim.

The rest will depend on your application specific use of Sidekiq.

—
Reply to this email directly or view it on GitHub.

Just as I defer Capistrano deploy info to another gem, I have no plans to provide docs for Docker. People are welcome to step up and provide this info to the community on their own.

On Nov 12, 2014, at 22:54, Enrico Stano [email protected] wrote:

Hi there,

I've doing a bit of search and I couldn't find any documentation about using Docker to deploy Sidekiq.

Can please anyone point me at some resource or share opinions on how is going?

Thanks!

—
Reply to this email directly or view it on GitHub.

ok, thanks.

@enricostano Out of interest, are you running Sidekiq in it's own container separate from your app?

I'm seeing some people running them both in the same container but that's then two processes running in one Docker container which is as I understand it not desirable.

@philostler my plan is to use one docker container per piece: 1 for redis, 1 for app, 1 for sidekiq, 1 for db, etc. Still a WIP though.

Just curious, why is it not derisable to have more than one process per docker container?

@Silex As far as I understand, having one process per container is best practice as it's separating your concerns, provides potentially better resilience (depending on your setup... e.g. better failure over, simpler maintenance, rolling upgrades etc) and doesn't provide any nasty surprises as usually it's 1 process per container.

That being said, I did a bit of reading over the weekend and some people are instead approaching this from a role based angle, aka one container for app which might bundle your Rails/Sinatra process along with your Sidekiq process.

Personally I think that's a bad idea, you want to be able to take down your app/queue separately from each other. The role base approach might make sense in some instances, but with Sidekiq I'd say not.

@philostler: thanks for the explanation.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

michaeldiscala picture michaeldiscala  Â·  4Comments

rajcybage picture rajcybage  Â·  3Comments

edgarjs picture edgarjs  Â·  3Comments

homanchou picture homanchou  Â·  3Comments

fatcatt316 picture fatcatt316  Â·  4Comments