nodejs-argo是一个强大的Argo隧道部署工具,专为PaaS平台和游戏玩具平台设计。它支持多种代理协议(VLESS、VMess、Trojan等),并集成了哪吒探针功能。
Telegram交流反馈群组:https://t.me/eooceu
- 本项目是针对node环境的paas平台和游戏玩具而生,采用Argo隧道部署节点,集成哪吒探针v0或v1可选。
- node玩具平台只需上传index.js和package.json即可,paas平台需要docker部署的才上传Dockerfile。
- 不填写ARGO_DOMAIN和ARGO_AUTH两个变量即启用临时隧道,反之则使用固定隧道。
- 哪吒v0/v1可选,当哪吒端口为{443,8443,2096,2087,2083,2053}其中之一时,自动开启tls。
| 变量名 | 是否必须 | 默认值 | 说明 |
|---|---|---|---|
| UPLOAD_URL | 否 | - | 订阅上传地址 |
| PROJECT_URL | 否 | https://www.google.com | 项目分配的域名 |
| AUTO_ACCESS | 否 | false | 是否开启自动访问保活 |
| PORT | 否 | 3000 | HTTP服务监听端口 |
| ARGO_PORT | 否 | 8001 | Argo隧道端口 |
| UUID | 否 | 89c13786-25aa-4520-b2e7-12cd60fb5202 | 用户UUID |
| NEZHA_SERVER | 否 | - | 哪吒面板域名 |
| NEZHA_PORT | 否 | - | 哪吒端口 |
| NEZHA_KEY | 否 | - | 哪吒密钥 |
| ARGO_DOMAIN | 否 | - | Argo固定隧道域名 |
| ARGO_AUTH | 否 | - | Argo固定隧道密钥 |
| CFIP | 否 | www.visa.com.tw | 节点优选域名或IP |
| CFPORT | 否 | 443 | 节点端口 |
| NAME | 否 | Vls | 节点名称前缀 |
| FILE_PATH | 否 | ./tmp | 运行目录 |
| SUB_PATH | 否 | sub | 订阅路径 |
- 标准端口:
https://your-domain.com/sub - 非标端口:
http://your-domain.com:port/sub
# 全局安装(推荐)
npm install -g nodejs-argo
# 或者使用yarn
yarn global add nodejs-argo
# 或者使用pnpm
pnpm add -g nodejs-argo# 直接运行(使用默认配置)
nodejs-argo
# 使用npx运行
npx nodejs-argo
# 设置环境变量运行
PORT=3000 npx nodejs-argo可使用 .env 文件来配置环境变量运行
或者直接在命令行中设置:
export UPLOAD_URL="https://your-merge-sub-domain.com"
export PROJECT_URL="https://your-project-domain.com"
export PORT=3000
export UUID="your-uuid-here"
export NEZHA_SERVER="nz.your-domain.com:8008"
export NEZHA_KEY="your-nezha-key"// CommonJS
const nodejsArgo = require('nodejs-argo');
// ES6 Modules
import nodejsArgo from 'nodejs-argo';
// 启动服务
nodejsArgo.start();# 创建screen会话
screen -S argo
# 运行应用
nodejs-argo
# 按 Ctrl+A 然后按 D 分离会话
# 重新连接:screen -r argo# 创建tmux会话
tmux new-session -d -s argo
# 运行应用
tmux send-keys -t argo "nodejs-argo" Enter
# 分离会话:tmux detach -s argo
# 重新连接:tmux attach -t argo# 安装PM2
npm install -g pm2
# 启动应用
pm2 start nodejs-argo --name "argo-service"
# 管理应用
pm2 status
pm2 logs argo-service
pm2 restart argo-service# 创建服务文件
sudo nano /etc/systemd/system/nodejs-argo.service
[Unit] Description=Node.js Argo Service After=network.target
[Service] Type=simple User=root WorkingDirectory=/root/test Environment=ARGO_PORT=8080 Environment=PORT=3000 ExecStart=/usr/bin/npx nodejs-argo Restart=always RestartSec=10
[Install] WantedBy=multi-user.target
# 启动服务
sudo systemctl start nodejs-argo
sudo systemctl enable nodejs-argo
# 更新全局安装的包
npm update -g nodejs-argo
# 或者重新安装
npm uninstall -g nodejs-argo
npm install -g nodejs-argo- 本程序仅供学习了解, 非盈利目的,请于下载后 24 小时内删除, 不得用作任何商业用途, 文字、数据及图片均有所属版权, 如转载须注明来源。
- 使用本程序必循遵守部署免责声明,使用本程序必循遵守部署服务器所在地、所在国家和用户所在国家的法律法规, 程序作者不对使用者任何不当行为负责。