seuros / capistrano-sidekiq

Sidekiq integration for Capistrano
Other
557 stars 307 forks source link

Sidekiq worker doesn't start until I ssh in to the server (systemd) #311

Open gregblass opened 2 years ago

gregblass commented 2 years ago

When I do a deploy, everything appears to work - but a worker doesn't spawn until I ssh into the server (user 'deploy'). As soon as I ssh in, the worker starts up.

Has anyone experienced this? Any clue as to what I might be missing from my config?

Capistrano is running this, which appears to work (or at least doesn't error): systemctl --user start sidekiq

But, the no worker shows up in the sidekiq dashboard until I SSH in as the deploy user.

seuros commented 2 years ago

@gregblass can you test with the alpha version please!

The readme has a link to a sample application to see test different settings.

Remember to clean up the old services, the new version generate a service with the name of the application + stage (you can override it)

dapi commented 1 year ago

enable linger

lucien-chastan commented 1 year ago

I had exactly the same problem, sidekiq was only running when I connected to my server using ssh. It was indeed an enable linger problem. Thanks @dapi 🙏

To complete @dapi 's answer, I ran this command :

sudo loginctl enable-linger my_username

in this case my_username is deploy

I found documentation about loginctl enable-linger here: https://wiki.archlinux.org/title/Systemd/User#Automatic_start-up_of_systemd_user_instances