/文档/项目部署

项目部署

支持的项目类型

系统会自动检测项目类型,支持所有主流框架:

🟢 Node.js 生态

⚛️

Next.js

全栈 React 框架,支持 SSR/SSG

检测:package.json + next 依赖
端口: 3000
🚀

Express.js / Koa

Node.js Web 框架,构建 API 服务

检测:package.json + start 脚本
端口: 3000
💚

Vue / Nuxt

Vue 生态,支持 SPA 和 SSR

检测:package.json + vue/nuxt 依赖
端口: 3000
🔷

NestJS

企业级 Node.js 框架

检测:package.json + @nestjs 依赖
端口: 3000

🐍 Python 生态

FastAPI

高性能 API 框架,适合 AI 后端

检测:requirements.txt + main.py
端口: 8000
🌶️

Flask

轻量级 Web 框架

检测:requirements.txt + flask
端口: 5000
🎸

Django

全功能 Web 框架

检测:requirements.txt + manage.py
端口: 8000
📊

Streamlit / Gradio

AI/ML 应用界面框架

检测:requirements.txt + streamlit/gradio
端口: 8501 / 7860

🌐 其他语言

🐹

Go

Gin、Echo、Fiber 等框架

检测:go.mod + main.go
端口: 8080
🦀

Rust

Actix、Axum 等框架

检测:Cargo.toml
端口: 8080

Java / Spring Boot

企业级 Java 应用

检测:pom.xml / build.gradle
端口: 8080
🐘

PHP / Laravel

PHP Web 应用

检测:composer.json
端口: 8000

📄 静态网站

🌍

HTML / CSS / JS

纯静态网站、落地页

检测:index.html
端口: 80 (Nginx)

Vite / React / Vue SPA

前端 SPA 应用(构建后部署)

检测:package.json + build 脚本
端口: 80 (Nginx)

项目结构示例

Node.js (Express/Next.js)

my-app/
├── package.json     # 必须包含 start 脚本
├── src/
│   └── index.js     # 入口文件
└── ...

# package.json 示例
{
  "scripts": {
    "start": "node src/index.js",
    "build": "...",  // 如需构建
  }
}

Python (FastAPI/Flask/Django)

my-api/
├── main.py          # FastAPI/Flask 入口
├── requirements.txt # Python 依赖
└── ...

# FastAPI 示例
from fastapi import FastAPI
app = FastAPI()

@app.get("/")
def root():
    return {"status": "ok"}

# Flask 示例
from flask import Flask
app = Flask(__name__)

@app.route("/")
def root():
    return {"status": "ok"}

if __name__ == "__main__":
    app.run(host="0.0.0.0", port=5000)

Go

my-service/
├── go.mod           # Go 模块定义
├── go.sum
├── main.go          # 入口文件
└── ...

# main.go 示例 (Gin)
package main

import "github.com/gin-gonic/gin"

func main() {
    r := gin.Default()
    r.GET("/", func(c *gin.Context) {
        c.JSON(200, gin.H{"status": "ok"})
    })
    r.Run(":8080")
}

静态网站

my-site/
├── index.html       # 入口页面
├── css/
├── js/
└── assets/

# 或 SPA 构建产物
dist/
├── index.html
├── assets/
└── ...

代码来源

📦 Git 仓库(推荐)

支持公开的 Git 仓库:

  • GitHub
  • GitLab
  • Gitee

默认拉取 main/master 分支,可指定子目录

📁 ZIP 上传

直接上传代码压缩包:

  • 最大 50MB
  • ZIP 格式
  • 根目录直接包含项目文件

适合私有代码或本地项目

部署流程

1

拉取代码

从 Git 克隆或解压 ZIP

2

构建镜像

根据模板生成 Dockerfile 并构建

3

启动容器

运行容器并配置网络

4

健康检查

确认服务正常响应

5

分配域名

生成 xxx.nomoo.top 访问地址

项目状态说明

状态说明
pending等待部署
deploying正在部署中
running运行中,可正常访问
sleeping休眠中(Free 套餐 30 分钟无访问)
stopped已停止
failed部署失败

常见部署问题

依赖安装失败

  • • 检查 requirements.txt 或 package.json 格式
  • • 确保依赖版本兼容
  • • 私有包需要配置认证

构建超时(10 分钟)

  • • 减少不必要的依赖
  • • 优化构建脚本

端口绑定错误

  • • Node.js 应用监听 3000 端口
  • • FastAPI/Django 监听 8000 端口
  • • Flask 监听 5000 端口
  • • Go/Java/Rust 监听 8080 端口
  • • Streamlit 监听 8501 端口
  • • 确保绑定 0.0.0.0 而非 localhost

重新部署

在项目详情页点击「重新部署」可以拉取最新代码并重新构建。 适用于代码更新后需要发布新版本的场景。

💡 提示:部署成功或失败后,系统会发送站内通知和邮件通知。

监控与日志

📊 资源监控

实时查看 CPU、内存使用情况

📝 运行日志

查看应用输出和错误日志

🔧 构建日志

查看部署过程的详细日志

📜 操作日志

记录所有部署、停止等操作