npm version npm downloads License
nodejs-argo是一个强大的Argo隧道部署工具,专为PaaS平台和游戏玩具平台设计。它支持多种代理协议(VLESS、VMess、Trojan等),并集成了哪吒探针功能。
Telegram交流反馈群组:https://t.me/eooceu
- 本项目自2025年10月29日15时45分起,已更改开源协议为GPL 3.0,并包含以下特定要求
- 此项目仅限个人使用,禁止用于商业行为(包括但不限于:youtube,bilibili,tiktok,facebook..等等)
- 禁止新建项目将代码复制到自己仓库中用做商业行为
- 请遵守当地法律法规,禁止滥用做公共代理行为
- 如有违反以上条款者将追究法律责任
- 本项目是针对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
-
感谢VPS.Town提供赞助 https://vps.town
-
感谢ZMTO提供赞助优质双isp vps。
GPL 3.0