Vagrant SSH隧道,节点调试,自动化无法工作

时间:2015-06-23 06:52:56

标签: node.js ssh vagrant

我有一个在流浪汉中运行的节点服务器。启动节点'start.sh'的脚本可以从文件中获取调试标志,我将其命名为debug.mode

在本地方面,我有一个脚本'startdebug.sh',它通过ssh登录到vagrant,写入debug.mode文件,重新启动脚本,等待直到完成,然后隧道5858。

如果我使用包含'--debug'节点的debug.mode运行start.sh文件,则打开5858并且端口可用(我正在使用telnet在vagrant中检查)。

如果我使用startdebug.sh节点执行相同操作,则表示已打开调试端口,然而 5858端口,当我在VM中尝试telnet时,它不可用。

有什么想法吗? :)

startdebug.sh

/usr/bin/vagrant ssh-config > /tmp/vagrant-ssh-config

ssh -F /tmp/vagrant-ssh-config nodejs "cd /var/www/sportsbook-api && echo $mode > debug.mode && export TERM=linux && sudo ./scripts/restart.sh"

sleep 2.5s

ssh -N -F /tmp/vagrant-ssh-config -L 5858:127.0.0.1:5858 nodejs &

start.sh

if [ -e "debug.mode" ]; then
    debug=$(cat "debug.mode")
    echo "\nNode $debug mode activated."
fi

nohup node src/main/apps/api & echo $! > run.pid &

0 个答案:

没有答案