npx deno 启动应用。
开始之前
- 你的电脑上需要安装 Deno,可以使用 Deno 官方安装程序,也可以使用 npm 包(
npm install deno)。 - 一个 Square Cloud 账户:使用邮箱或 GitHub 注册。
- 一个有效的计划。查看计划并选择适合你项目的计划。
配置 Square Cloud
如果你通过控制面板上传应用,可以跳过本节:控制面板会自动为你创建
squarecloud.app 配置文件。配置文件参考
squarecloud.app 文件告诉 Square Cloud 如何运行你的应用:主文件、内存、运行时版本、名称,以及网站所用的子域名。deno 包添加到项目的 dependencies 中,这样 npx deno 命令才能在 Square Cloud 上使用。不要将它添加到 devDependencies:生产环境不会安装这些依赖。
RUNTIME=nodejs,并在 START 字段中用 Deno 启动应用,同时加上它所需的权限。每种应用的完整配置文件:
- 机器人或 Worker
- 网站或 API
squarecloud.app
--allow-net、--allow-env、--allow-read 等)。如果你使用 deno.json 中定义的任务,请用 START=npx deno task start 启动。
Square Cloud 运行什么
START会被直接执行。有关配置文件参数的更多信息,请访问配置参数。- 如果应用没有
node_modules文件夹,Square Cloud 会在启动它之前运行npm install --no-audit --no-fund,这也会安装deno以及package.json中列出的所有 npm 模块。由于运行时设置了NODE_ENV=production,devDependencies中的包不会被安装。如果node_modules已经存在,则跳过安装步骤。
网站和 API 的端口与主机
Deno.serve() 默认监听 8000 端口,并且不会读取 PORT 环境变量。请自行传入端口和主机:Square Cloud 将 PORT 设为 80,而 0.0.0.0 可以接受来自容器外部的连接。
main.ts
PORT 需要 --allow-env,提供服务需要 --allow-net,正如上面的 START 示例所示。
准备项目
必需文件
squarecloud.app,位于 ZIP 的根目录。- 你的入口文件,例如
main.ts。 - 在
dependencies中列出deno的package.json。缺少它的上传会以INVALID_DEPENDENCY失败。 - 可选:用于任务、导入和其他 Deno 设置的
deno.json或deno.jsonc。
不需要包含的文件
node_modules:Square Cloud 会从你的上传内容中移除此文件夹,并在首次启动时根据package.json安装依赖。deno_dir或.cache/deno:Deno 缓存目录,Deno 会在服务器上重新填充它。- 锁文件:CLI 和 VS Code 扩展默认不会上传
package-lock.json、yarn.lock和pnpm-lock.yaml。如果你需要package-lock.json中的确切版本,请在你的squarecloud.ignore中用!package-lock.json重新包含它。
故障排除
PermissionDenied: Requires net or env access
PermissionDenied: Requires net or env access
除非你允许,否则 Deno 会阻止网络和环境变量访问。请将错误中提到的标志(例如
--allow-net 或 --allow-env)添加到你的 START 命令中。内存不足
内存不足
托管一个机器人所需的最低内存为 256MB,托管网站/API 则为 512MB。不过,根据应用的大小和复杂程度,可能需要分配更多的内存,以避免应用因内存耗尽而崩溃。
部署
通过控制面板
1
访问上传页面
访问上传页面并上传你的项目 zip 文件。
2
配置你的环境
上传 zip 后,你需要为项目配置名称、主文件或运行时环境以及其他设置。
如果你上传的是 Web 项目,请务必选择 “Web Publication” 并为项目设置子域名。
如果你上传的是 Web 项目,请务必选择 “Web Publication” 并为项目设置子域名。
3
部署你的项目
最后,点击 “Deploy” 按钮,即可将项目托管到 Square Cloud。
部署完成后,你可以在控制面板中监控项目的状态和日志。
部署完成后,你可以在控制面板中监控项目的状态和日志。

4
确认你的应用已上线
首次部署通常在一分钟内完成。在控制面板中,等待你的应用状态显示为运行中,并检查日志中是否有启动错误。
如果你部署的是网站或 API,请在浏览器中打开
如果你部署的是网站或 API,请在浏览器中打开
https://<your-subdomain>.squareweb.app,你应该能看到应用正常响应。如果你部署的是机器人,发送一条命令确认它已上线。
通过 CLI
要使用此方法,你的项目根目录中需要有一个名为squarecloud.app 的配置文件。它告诉 Square Cloud 如何运行你的应用。
配置文件指南
了解如何创建定义你应用环境的
squarecloud.app 配置文件。1
安装 CLI
安装 Square Cloud CLI。如果你已经安装,运行同一条命令即可更新:
2
登录
运行下面的命令。它会打开你的浏览器:在浏览器中批准登录后,CLI 即可使用。无需复制任何 API 密钥。如需在脚本和 CI 中使用,请参阅 CLI 身份验证。
3
上传你的项目
4
确认你的应用已上线
首次部署通常在一分钟内完成。直接在终端中检查你的应用状态和日志:如果你部署的是网站或 API,请在浏览器中打开
https://<your-subdomain>.squareweb.app,你应该能看到应用正常响应。如果你部署的是机器人,发送一条命令确认它已上线。
后续步骤
环境变量
将密钥和设置放在代码之外,并在运行时读取。
自定义域名
在 Standard 及以上计划中,用你自己的域名提供应用。
故障排除
修复无法启动的应用或没有响应的站点。

