如何部署我的 Next.js 应用?
- 在面板中打开我的服务器,点击您的服务器。
- 在概览标签页中,等待应用一行显示“Next.js 已就绪”。
- 打开面板地址链接,用邮箱和密码两行的信息登录。服务器和第一个项目已经准备好。
连接您的仓库
- 在 Projects 页面打开 My first project 和 production,然后点击 New resource。这些名称是 Coolify 界面中的原文。
- 公开仓库请选择 Public Git Repository,输入地址并点击 Check repository。
- 私有仓库请先在 Keys & Tokens 下的 Private Keys 页面点击 Generate ED25519,并把公钥添加到 GitHub 上该仓库的 Deploy keys 中。然后选择 Private Git Repository (with Deploy Key),输入
[email protected]:user/project.git。 - 保持 Build pack 为 Railpack,点击 Continue。Coolify 将 Railpack 标为测试版,如果遇到问题,请改用您自己的 Dockerfile。
- 在 Environment Variables 页面填写变量,然后点击 Deploy。HTTPS 测试地址在 Domains 页面。
用 git push 部署
- 在应用的 Webhooks 页面,复制 GitHub 部分的 Webhook URL,在 Webhook secret 中填入至少 16 个字符的随机值并保存。
- 在 GitHub 上打开仓库的 Settings,进入 Webhooks 并点击 Add webhook。Payload URL 填上述地址,Content type 选
application/json,Secret 填同一个值,事件只选 push。
此后,每次向所选分支执行 git push,都会构建并发布新版本。修改以 NEXT_PUBLIC_ 开头的变量后,请点击 Redeploy。如果构建时内存不足,请在面板中升级配置。
您的域名
把 A 记录指向服务器的 IP。在 Domains 页面使用 Add domain,选择 https,输入域名,保存后点击 Redeploy。Coolify 会自动获取证书。
关闭 8000、6001 和 6002 端口
面板可以通过 HTTPS 地址打开之后,就不再需要这些端口。Docker 会绕过 ufw 处理它发布的端口,所以 ufw 无法关闭它们。请通过 SSH 连接,并按照 Coolify 的官方做法操作:
cd /data/coolify/source
printf 'services:\n coolify:\n ports: !override\n - "127.0.0.1:8000:8080"\n - "127.0.0.1:6001:6001"\n - "127.0.0.1:6002:6002"\n' > docker-compose.custom.yml
curl -fsSL https://cdn.coollabs.io/coolify/install.sh | bash
最后一条命令会刷新安装,如果有新版本,也会升级到新版本。要撤销这一设置,请删除该文件并再次运行同一条命令。
须知
Coolify 使用自己的密钥以 root 身份通过 SSH 连接。如果禁用 root 登录,或从 /root/.ssh/authorized_keys 中删除 coolify 那一行,部署就会停止。
还没有服务器? 订购预装 Next.js 的服务器:配置由您选择,按所选配置付费。
感谢您的反馈!