Hi,
I’m fairly new to Rails and programming and after spending hours wondering why my app.s jobs were not working, I realized I need to actually start Sidekiq (I know, it should have been obvious but well…)
I’m using Jumpstart Rails and Sidekiq is already configured by Jumpstart. If I run “bundle exec Sidekiq”, Sidekiq starts and the jobs get processed as expected.
My issue is that I can’t figure out how to actually get Sidekiq to always run on Render.
Here is what I have tried so far:
1) Adding “bundle exec Sidekiq” in the render-build.sh file.
Didnt’t work but I don’t remember why exactly.
2) Adding “bundle exec sidekiq” as a start command in Render settings.
This is what I put as a start command in Render.
bundle exec puma -C config/puma.rb; bundle exec sidekiq
This executed Puma as usual but seemingly ignored the Sidekiq part.
3) Adding Sidekiq as a separate worker process in Render
Similar to what’s described here
I used the Render Sidekiq example and followed the instructions from Render but I get a message saying the app isn’t health and the following:
Mar 28 05:53:41 PM ==> Starting service with 'bundle exec sidekiq -C config/sidekiq.yml'
Mar 28 05:53:42 PM No such file config/sidekiq.yml
I assume the issue is that the Sidekiq background worked process is not linked to my Rails app web service but I’m not sure how to link it.
I put “bundle install” as a build command and “bundle exec sidekiq -C config/sidekiq.yml” as a start command but left everything identical to the Render example repo otherwise.
I, of course, added a REDIS_URL env variable.
So yeah, I’m utterly confused and not sure what to do. I feel like I’m close but can’t figure out what I should be doing.
Help would be highly appreciated