我有一个在流浪汉中运行的节点服务器。启动节点'start.sh'的脚本可以从文件中获取调试标志,我将其命名为debug.mode
在本地方面,我有一个脚本'startdebug.sh',它通过ssh登录到vagrant,写入debug.mode文件,重新启动脚本,等待直到完成,然后隧道5858。
如果我使用包含'--debug'节点的debug.mode运行start.sh文件,则打开5858并且端口可用(我正在使用telnet在vagrant中检查)。
如果我使用startdebug.sh节点执行相同操作,则表示已打开调试端口,然而 5858端口,当我在VM中尝试telnet时,它不可用。
有什么想法吗? :)
/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 &
if [ -e "debug.mode" ]; then
debug=$(cat "debug.mode")
echo "\nNode $debug mode activated."
fi
nohup node src/main/apps/api & echo $! > run.pid &