How to run a background processing worker?

I’m used to Ruby on Rails deployment on Heroku. It’s common practice to use a Procfile do define a “web” command which runs the application web server and a “worker” command which runs background jobs (eg. Sidekiq / Resque / Delayed Job etc). These commands then run on separate instances and can be scaled individually.

What’s the equivalent when using Qovery?

Qovery’s example dockerfile for Rails runs the web server straight from the Dockerfile, so not sure how to adapt this to be able to run different commands, or if it’s even possible.

Qovery’s guide for migrating a node-js app from Heroku to Qovery does not take multiple Procfile commands into account. It also doesn’t take into account the “release” command, commonly used to run eg. database migrations at deploy time.

1 Like

Hi @dbackeus, welcome to the Qovery Community. “Worker” and “web” modes mean running two times the same application on Qovery. Unfortunately, it’s not possible today, but we plan to release a new version that will perfectly support this use case for September in GA. We are launching a closed beta for June, and I can put you in the loop if you are interested. What do you think?

BTW, you can see what features we plan to deliver in the future via our roadmap

Would love to be a beta-tester. However I’m just evaluating on a trial account which I guess might expire in a few days.

Hey @dbackeus ! there is no “trial account” on Qovery. You can use Qovery Community (free) plan forever (with its limitations).

1 Like

Good to know, thanks :+1:

Hi @rophilogene
We are facing the exact same issue.
We would like to run Django web and worker (we do it in Heroku using Procfile).
Have you implemented something to do it? If yes, please help point us to some docs/content.

Hi @yassine.belmamoun , supporting multiple procfile commands within the same repository is still a task to plan on our side. I don’t have an ETA but I highly recommend using a Dockerfile in this situation. I think you will like this thread to see how you can run your same application in a web app and worker mode.