接上一篇的搭建完ngrok後,次日早上發現ngrok服務端停止工作了,查看日誌發現是凌晨4點被阿里雲的檢查訪問後內存溢出了,經過查詢資料瞭解,是ngrok1.X版本都存在這個問題,但是2.0版本是不開放的,也就是源代碼裏面有這個問題,又不懂go語言,就採用了在服務端用腳本來檢查ngrok進程,發現進程停止了就重啓。
1.編寫腳本文件restartng.sh
sudo vim restartng.sh
#!/bin/sh
while true
do
ps -ef | grep "ngrok" | grep -v "grep"
if [ $? -eq 0 ]
then
echo "$?"
echo "ngrok process already started!"
else
echo "$?"
nohup /usr/local/ngrok/bin/ngrokd -tlsKey=/usr/local/ngrok/server.key -tlsCrt=/usr/local/ngrok/server.crt -domain="trans.emeet.ai" -httpAddr=":8081" -httpsAddr=":8082" >/usr/local/ngrok/output 2>&1 &
echo "ngrok process has been restarted!"
fi
sleep 30
done
2.授權文件執行權限
sudo chomd 777 tom.sh
3.nohub命令啓動,讓後臺一直運行
sudo nohup ./restartng.sh >restartoutput 2>&1 &
日誌文件輸出到restartoutput