我需要创建一个运行与rvm一起安装的gem二进制文件的runit服务,问题是非登录bash shell,这是runit运行其服务的方式,没有正确的rvm路径。有没有自动的方法呢?
答案 0 :(得分:6)
我使用以下脚本:
#!/bin/sh
exec 2>&1
DIR=/var/www/apps/mega_app/current
export rvm_path=/usr/local/rvm
export rvm_ignore_rvmrc=1
cd $DIR
exec chpst -u user:group /usr/local/rvm/bin/rvm ree exec bundle exec ${DIR}/daemons/mega_daemon.rb
答案 1 :(得分:1)
su - USERNAME -c '/path/to/script'
是否有效?它应该保留$ PATH变量。