通过ngrok部署了内网穿透服务,但是每次服务器启动还要手动执行服务命令,直接创建 systemd 服务文件,完美解决!

sudo nano /etc/systemd/system/ngrok.service
  • 添加启动脚本,脚本大致内容为开机等待网络正常启动,三秒后执行启动命令

[Unit]
Description=Ngrok Tunnel Service
After=network-online.target
Wants=network-online.target

[Service]
User=root  # 直接使用 root 用户
WorkingDirectory=/root
ExecStartPre=/bin/sleep 3
ExecStart=/usr/local/bin/ngrok http --url= #这里添加你自己的启动命令
Restart=always
RestartSec=5

[Install]
WantedBy=multi-user.target
  • 保存文件后,重新加载并启动服务

sudo systemctl daemon-reload
sudo systemctl enable ngrok.service
sudo systemctl start ngrok.service
  • 检查状态

sudo systemctl status ngrok.service

 最后一步reboot测试一下,也可以检查某个端口是否开放(例如 80),使用 grep 过滤:

sudo ss -tulpn | grep :80
Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐