Providers

Koyeb

将 Nitro 应用部署到 Koyeb。

预设: koyeb

Read more in www.koyeb.com.

使用控制面板

  1. Koyeb 控制面板 中,点击 创建应用
  2. 选择 GitHub 作为您的部署方式。
  3. 选择包含应用代码的 GitHub 存储库分支
  4. 命名您的服务。
  5. 如果您没有在 package.json 文件中添加 start 命令,在 构建和部署设置 下,切换与运行命令字段相关的覆盖开关。在 运行命令 字段中输入:
    node .output/server/index.mjs
    
  6. 高级 部分,点击 添加变量 并添加一个 NITRO_PRESET 变量,值设置为 koyeb
  7. 命名应用。
  8. 点击 部署 按钮。

使用 Koyeb CLI

  1. 按照针对您的操作系统的说明 安装 Koyeb CLI 客户端,您可以使用安装程序。或者,访问 GitHub 的发布页面 直接下载所需文件。
  2. 通过访问 Koyeb 控制面板中的 组织的 API 设置 创建 Koyeb API 访问令牌。
  3. 通过输入以下命令使用 Koyeb CLI 登录到您的帐户:
    koyeb login
    

    当提示时,粘贴您的 API 凭据。
  4. 使用以下命令从 GitHub 存储库部署您的 Nitro 应用。确保将 <APPLICATION_NAME><YOUR_GITHUB_USERNAME><YOUR_REPOSITORY_NAME> 替换为您自己的值:
    koyeb app init <APPLICATION_NAME> \
       --git github.com/<YOUR_GITHUB_USERNAME>/<YOUR_REPOSITORY_NAME> \
       --git-branch main \
       --git-run-command "node .output/server/index.mjs" \
       --ports 3000:http \
       --routes /:3000 \
       --env PORT=3000 \
       --env NITRO_PRESET=koyeb
    

使用 Docker 容器

  1. 在项目根目录创建 .dockerignore 文件并添加以下内容:
    Dockerfile
    .dockerignore
    node_modules
    npm-debug.log
    .nitro
    .output
    .git
    dist
    README.md
    
  2. 在项目根目录添加一个 Dockerfile
    FROM node:18-alpine AS base
    
    FROM base AS deps
    RUN apk add --no-cache libc6-compat
    WORKDIR /app
    COPY package.json package-lock.json ./
    RUN npm ci
    
    FROM base AS builder
    WORKDIR /app
    COPY --from=deps /app/node_modules ./node_modules
    COPY . .
    RUN npm run build && npm cache clean --force
    
    FROM base AS runner
    WORKDIR /app
    RUN addgroup --system --gid 1001 nodejs
    RUN adduser --system --uid 1001 nitro
    COPY --from=builder /app .
    USER nitro
    EXPOSE 3000
    ENV PORT 3000
    CMD ["npm", "run", "start"]
    

上述 Dockerfile 提供了运行 Nitro 应用的最小要求。您可以根据需要轻松扩展它。 然后,您需要将 Docker 镜像推送到一个注册表。您可以使用 Docker HubGitHub 容器注册表 等。 在 Koyeb 控制面板中,使用镜像和标签字段指定您想要部署的镜像。 您还可以使用 Koyeb CLI。 有关更多信息,请参阅 Koyeb Docker 文档