Supabase CLI
本地开发、部署到 Supabase 平台并设置 CI/CD 工作流
Supabase CLI 允许您在本地机器或 CI 环境中运行完整的 Supabase 技术栈。只需两条命令即可设置并启动一个新的本地项目:
supabase init
创建新的本地项目supabase start
启动 Supabase 服务
安装 Supabase CLI
使用 Homebrew 安装 CLI:
1brew install supabase/tap/supabase
更新 Supabase CLI
当有新版本发布时,您可以使用相同的方法更新CLI。
1brew upgrade supabase
如果在本地运行了任何Supabase容器,请在升级前停止并删除其数据卷。这能确保Supabase托管服务可以在干净的本地数据库状态下应用新的迁移。
备份并停止运行中的容器
请记得在停止前保存所有本地模式和数据变更,因为--no-backup
标志会删除它们。
123supabase db diff -f my_schemasupabase db dump --local --data-only > supabase/seed.sqlsupabase stop --no-backup
本地运行 Supabase
Supabase CLI 使用 Docker 容器来管理本地开发环境。请按照官方指南安装和配置 Docker Desktop:
您也可以使用其他提供 Docker 兼容 API 的容器工具:
- Rancher Desktop (macOS, Windows, Linux)
- Podman (macOS, Windows, Linux)
- OrbStack (macOS)
- colima (macOS)
在您想要创建项目的文件夹内运行:
1supabase init
这将创建一个新的 supabase
文件夹。您可以安全地将此文件夹提交到版本控制系统。
现在,要启动 Supabase 服务栈,请运行:
1supabase start
首次运行时需要较长时间,因为 CLI 需要将 Docker 镜像下载到本地机器。CLI 包含了完整的 Supabase 工具集,以及一些对本地开发有用的附加镜像(如本地 SMTP 服务器和数据库差异工具)。
访问项目服务
当所有 Supabase 服务都运行起来后,您将看到包含本地 Supabase 凭证的输出信息。输出内容如下所示,其中包含您将在本地项目中使用的 URL 和密钥:
12345678已启动 Supabase 本地开发环境。 API URL: http://localhost:54321 DB URL: postgresql://postgres:postgres@localhost:54322/postgres Studio URL: http://localhost:54323 Inbucket URL: http://localhost:54324 anon key: eyJh......service_role key: eyJh......
12# 默认 URL:http://localhost:54323
本地开发环境包含 Supabase Studio,这是一个用于操作数据库的图形界面。
停止本地服务
当您完成Supabase项目的工作后,可以停止服务栈(不会重置本地数据库):
1supabase stop