确保你已经安装了Surge CLI工具,可以通过以下命令安装:

npm install -g surge

初始化项目

创建一个新的项目目录,进入该目录:

mkdir my-project
cd my-project

编写Surge配置文件

在项目目录下创建一个 surge.json 文件:

{
  "name": "my-service",
  "domain": "你的服务域名",
  "build": "npm run build",
  "env": {
    "NODE_ENV": "production"
  },
  "deploy": {
    "production": {
      "target": "your-production-domain.com",
      "port": 808
    }
  }
}
  • name:服务名称,用于识别。
  • domain:服务的主域名。
  • build:构建命令,根据项目需要调整。
  • env:环境变量配置,用于不同环境下的设置。
  • deploy:部署配置,指定不同环境的部署目标。

进行构建与部署

在项目目录中运行以下命令:

surge build

这会生成构建文件并推送到Surge服务器,部署完成后,Surge会自动配置域名解析和负载均衡。

访问服务

构建成功后,可以通过配置的 domain 访问服务,

curl http://your-production-domain.com

查看监控信息

使用 surge monitor 命令查看服务实时监控信息:

surge monitor

这会显示服务的状态、响应时间、错误日志等信息。

更新服务

要更新服务,可以直接修改代码并重新构建:

cd my-project
git add .
git commit -m "更新说明"
npm run build
surge push

集成CI/CD

在CI/CD工具(如GitHub Actions)中添加Surge的步骤:

name: Deployment
on:
  push:
    branches: [ "main" ]
jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - name: Build
        run: npm run build
      - name: Deploy
        uses: surge/shuruge@main
        with:
          surge: surge.json
          target: production

处理多个环境

surge.json 中添加多个部署环境:

{
  "deploy": {
    "development": {
      "target": "your-dev-domain.com",
      "port": 808
    },
    "production": {
      "target": "your-production-domain.com",
      "port": 808
    }
  }
}

配置负载均衡

surge.json 中添加负载均衡配置:

{
  "deploy": {
    "production": {
      "target": "your-production-domain.com",
      "port": 808,
      "lb": {
        "method": "leastconn",
        "options": {}
      }
    }
  }
}

使用环境变量

surge.json 中定义环境变量:

{
  "env": {
    "DATABASE_URL": "mysql://your-database-url",
    "API_KEY": "your-api-key"
  }
}

安全配置

确保 surge.json 中的敏感信息加密或通过环境变量管理:

{
  "env": {
    "DATABASE_URL": "${DB_URL}",
    "API_KEY": "${API_KEY}"
  }
}

故障排除

  • 配置文件错误:检查 surge.json 格式是否正确,确保使用的引号和括号正确。
  • 构建问题:检查构建命令是否正确,确保所有依赖都安装完成。
  • 域名解析:确认域名已经正确指向Surge服务器,可能需要配置DNS记录。

通过以上步骤,你可以成功使用Surge管理网络服务,实现自动化部署、监控和维护,提升开发效率和服务可靠性。

1.安装Surge CLI

扫码添加小飞机VPN网络工具官方微信

扫码添加小飞机VPN网络工具官方微信

400-638-2751
扫码添加小飞机VPN网络工具官方微信

扫码添加小飞机VPN网络工具官方微信

网站地图