首页 物联网

Windows 下 Supabase 部署指南:从安装到测试全攻略

分类:物联网
字数: (2863)
阅读: (0753)
内容摘要:Windows 下 Supabase 部署指南:从安装到测试全攻略,

在 Windows 系统中部署 Supabase,并进行有效测试,对许多开发者来说并非易事。本文将详细介绍在 Windows 环境下搭建 Supabase 环境的步骤,并提供测试方法和常见问题解决方案。考虑到国内网络环境复杂,本文会涉及到如何利用代理加速依赖下载,以及如何配置数据库连接等细节。

准备工作

  1. 安装 Docker Desktop for Windows:Supabase 依赖 Docker 容器运行,因此必须先安装 Docker Desktop。下载地址:https://www.docker.com/products/docker-desktop/。安装完成后,请确保 Docker 服务已经启动。

  2. 安装 Node.js 和 npm:Supabase CLI 需要 Node.js 环境。推荐使用 nvm (Node Version Manager) 管理 Node.js 版本,方便切换。

  3. 安装 Supabase CLI:打开命令行工具(如 PowerShell 或 CMD),执行以下命令安装 Supabase CLI:

    Windows 下 Supabase 部署指南:从安装到测试全攻略
    npm install -g @supabase/cli
    

    如果网络连接不稳定,可以尝试使用国内镜像源:

    npm install -g @supabase/cli --registry=https://registry.npmmirror.com
    

初始化 Supabase 项目

  1. 创建本地项目目录:选择一个合适的目录,例如 D:\supabase-project,并在该目录下打开命令行工具。

  2. 初始化 Supabase:执行 supabase init 命令,初始化 Supabase 项目。这将在当前目录下创建一个 .supabase 文件夹,用于存放 Supabase 的配置文件。

    Windows 下 Supabase 部署指南:从安装到测试全攻略
    supabase init
    
  3. 启动 Supabase:执行 supabase start 命令启动 Supabase。这将下载并启动 Supabase 的所有 Docker 容器,包括 PostgreSQL 数据库、Realtime 服务器、Storage 服务器等。

    supabase start
    

    首次启动可能需要较长时间,因为需要下载 Docker 镜像。如果下载速度慢,可以配置 Docker 的镜像加速器。例如,配置阿里云镜像加速:

    • 打开 Docker Desktop 的设置,选择 Resources -> Docker Engine,在配置文件中添加以下内容:
    {
      "registry-mirrors": [
        "https://<your-alidocker-mirror>.mirror.aliyuncs.com"
      ]
    }
    
    • 替换 <your-alidocker-mirror> 为你的阿里云镜像加速地址。
  4. 配置数据库连接:Supabase 启动后,会生成一个 supabase/.env 文件,其中包含了数据库连接信息。你可以使用这些信息连接到本地的 PostgreSQL 数据库。

    Windows 下 Supabase 部署指南:从安装到测试全攻略

测试 Supabase 环境

  1. 使用 Supabase Studio:Supabase Studio 是一个图形化的数据库管理工具,可以通过浏览器访问。在 supabase start 命令的输出中,可以找到 Supabase Studio 的地址,通常是 http://localhost:54323

  2. 创建数据库表:在 Supabase Studio 中,可以创建数据库表,并插入一些测试数据。

  3. 编写测试代码:可以使用 Node.js 或其他编程语言编写测试代码,连接到 Supabase 数据库,并进行数据操作。

    Windows 下 Supabase 部署指南:从安装到测试全攻略
    • 安装 Supabase JavaScript 客户端:
    npm install @supabase/supabase-js
    
    • 编写测试代码:
    // index.js
    import { createClient } from '@supabase/supabase-js'
    
    const supabaseUrl = 'http://localhost:54321' // 默认端口,如果修改过请相应修改
    const supabaseKey = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZS1kZW1vIiwiaWF0IjoxNjQxNzY5MjAwLCJleHAiOjE5NTczNDUyMDB9.zvj-jJbN0bGtI_QyG6Z_8iU-Lw9t_4Vb7i57l3uB-Xw'
    const supabase = createClient(supabaseUrl, supabaseKey)
    
    async function testSupabase() {
      const { data, error } = await supabase
        .from('todos') // 假设你创建了一个名为 todos 的表
        .select('*')
    
      if (error) {
        console.error('Error fetching data:', error)
      } else {
        console.log('Data:', data)
      }
    }
    
    testSupabase()
    
    • 运行测试代码:
    node index.js
    

    如果一切正常,你应该能在控制台中看到从 Supabase 数据库中获取的数据。

常见问题及解决方案

  1. Docker 镜像下载失败:配置 Docker 镜像加速器,例如阿里云镜像加速或网易云镜像加速。
  2. 端口冲突:Supabase 默认使用 54321、54322、8000 等端口。如果这些端口被占用,可以在 .supabase/config.toml 文件中修改端口配置。
  3. 数据库连接失败:检查 .env 文件中的数据库连接信息是否正确,包括数据库地址、端口、用户名和密码。
  4. 权限问题:确保当前用户具有 Docker 容器的访问权限。
  5. 网络问题:部分网络环境下,可能需要配置代理才能正常访问 Supabase 服务。可以在命令行中设置 HTTP_PROXYHTTPS_PROXY 环境变量。

实战避坑经验总结

  • 充分利用 Docker Compose:Supabase 的启动和停止依赖于 Docker Compose。熟悉 Docker Compose 的使用,可以更方便地管理 Supabase 服务。
  • 备份数据库:定期备份 Supabase 数据库,防止数据丢失。可以使用 pg_dump 命令备份 PostgreSQL 数据库。
  • 监控服务状态:使用 Prometheus 和 Grafana 等工具监控 Supabase 服务的状态,及时发现并解决问题。
  • 注意防火墙设置:确保防火墙允许访问 Supabase 相关的端口。
  • 善用 Supabase 官方文档和社区:Supabase 官方文档提供了详细的说明和示例代码。如果遇到问题,可以在 Supabase 社区中寻求帮助。

希望以上指南能够帮助你在 Windows 环境下成功部署和测试 Supabase。Supabase 作为一款开源的 Firebase 替代方案,其强大的功能和灵活的部署方式,为开发者提供了更多的选择。记住,遇到问题时,多查阅文档,多尝试,总能找到解决方案。

Windows 下 Supabase 部署指南:从安装到测试全攻略

转载请注明出处: 加班到秃头

本文的链接地址: http://m.acea1.store/blog/320825.SHTML

本文最后 发布于2026-03-31 20:44:33,已经过了27天没有更新,若内容或图片 失效,请留言反馈

()
您可能对以下文章感兴趣
评论
  • 臭豆腐爱好者 6 天前
    Supabase Studio 确实方便,可视化管理数据库简直是福音。
  • e人代表 3 天前
    Supabase Studio 确实方便,可视化管理数据库简直是福音。
  • 雪碧透心凉 5 天前
    写得太好了,正愁在 Windows 上部署 Supabase 呢,这篇教程简直是及时雨!
  • 红豆沙 3 天前
    大佬,如果我想用宝塔面板管理 PostgreSQL,应该怎么配置呢?
  • 咖啡不加糖 4 天前
    感谢分享!国内镜像源真的太重要了,不然下载速度慢到怀疑人生。