2015-12-23 4 views
2

Я читал весь Интернет, но не могу этого сделать. Нужно начать загрузку Sidekiq на VDS (Ubuntu 14.04). Я нашел и использовать это:Запустите Sidekiq при загрузке системы. Ubuntu 14.04

# /etc/init/sidekiq.conf - Sidekiq config 

# This example config should work with Ubuntu 12.04+. It 
# allows you to manage multiple Sidekiq instances with 
# Upstart, Ubuntu's native service management tool. 
# 
# See workers.conf for how to manage all Sidekiq instances at once. 
# 
# Save this config as /etc/init/sidekiq.conf then manage sidekiq with: 
# sudo start sidekiq index=0 
# sudo stop sidekiq index=0 
# sudo status sidekiq index=0 
# 
# Hack Upstart's reload command to 'quiet' Sidekiq: 
# 
# sudo reload sidekiq index=0 
# 
# or use the service command: 
# sudo service sidekiq {start,stop,restart,status} 
# 

description "Sidekiq Background Worker" 

start on startup 

#start on runlevel [2345] 
stop on runlevel [06] 

#start on startup 


# change to match your deployment user 
setuid me 
setgid me 
env HOME=/home/me 

respawn 
respawn limit 3 30 

# TERM is sent by sidekiqctl when stopping sidekiq. Without declaring these as 
# normal exit codes, it just respawns. 
normal exit 0 TERM 

# Older versions of Upstart might not support the reload command and need 
# this commented out. 
reload signal USR1 

instance $index 

    script 
# this script runs in /bin/sh by default 
# respawn as bash so we can source in rbenv 
exec /bin/bash <<'EOT' 
    # Pick your poison :) Or none if you're using a system wide installed Ruby. 
    # rbenv 
    # source /home/apps/.bash_profile 
    # OR 
    # source /home/apps/.profile 
    # OR system: 
    # source /etc/profile.d/rbenv.sh 
    # 
    rvm 
    source /usr/local/rvm/scripts/rvm 

    # Logs out to /var/log/upstart/sidekiq.log by default 

    cd /var/www/vk_c_watcher/code 
    exec bundle exec sidekiq -i ${index} -e production 
EOT 
end script 

После добавления, что я могу начать Sidekiq с start sidekiq app="/var/www/vk_c_watcher/code" index=0. Но при перезагрузке ни одного Sidekiq в списке процессов.

+0

nobilik, вы когда-нибудь это разрешили? –

+0

@ JaredMenard еще нет, но думаю экспериментировать с уровнями запуска. Я был занят другими вещами. – nobilik

+0

Если я придумаю решение, я отправлю ответ здесь. –

ответ

0

Спасибо Майку Перхаму за помощью. Я просто использовал неправильный скрипт. С this script Sidekiq начинается при запуске.

0

startup Событие запускается в самом начале системы, в данный момент недоступна ни одна записываемая файловая система или сеть, возможно, она пытается начать, но сбой и даже не может зарегистрировать это.

Выполнить это немного позже, например, на уровне выполнения 2 или какое-либо пользовательское событии, которое срабатывает, когда начало другая зависимость (Redis, базы данных и т.д.)

также закомментировать # rvm обратно, что не было команда, но метка для следующей строки с source ....

+0

для '# rvm' Я уже это вижу. Благодарю. Другие вещи попробуют. – nobilik