supabase本地部署

1.拉取代码

github地址

git clone --depth 1 https://github.com/supabase/supabase
cd supabase/docker
cp .env.example .env

2.生成KEY

生成地址:

Self-Hosting with Docker | Supabase Docs

2.修改.env配置文件

上面生成key,对号入座。

POSTGRES_PASSWORD=123456
JWT_SECRET=******
ANON_KEY=******
SERVICE_ROLE_KEY=******
DASHBOARD_USERNAME=supabase
DASHBOARD_PASSWORD=123456@1

3.启动

docker compose pull
docker compose up -d
➜  docker docker compose up -d
[+] Running 13/13
 ✔ Network supabase_default                  Created                                                             0.1s 
 ✔ Container supabase-vector                 Healthy                                                             0.5s 
 ✔ Container supabase-imgproxy               Started                                                             0.6s 
 ✔ Container supabase-db                     Healthy                                                             0.5s 
 ✔ Container supabase-analytics              Healthy                                                             0.3s 
 ✔ Container supabase-studio                 Started                                                             0.7s 
 ✔ Container realtime-dev.supabase-realtime  Started                                                             0.7s 
 ✔ Container supabase-edge-functions         Started                                                             0.7s 
 ✔ Container supabase-rest                   Started                                                             0.6s 
 ✔ Container supabase-kong                   Started                                                             0.7s 
 ✔ Container supabase-auth                   Started                                                             0.7s 
 ✔ Container supabase-meta                   Started                                                             0.7s 
 ✔ Container supabase-storage                Started                                                             0.4s 
➜  docker docker compose ps   
NAME                             IMAGE                              COMMAND                                                                                                                                                 SERVICE     CREATED          STATUS                    PORTS
realtime-dev.supabase-realtime   supabase/realtime:v2.10.1          "/usr/bin/tini -s -g -- /app/limits.sh sh -c '/app/bin/migrate && /app/bin/realtime eval 'Realtime.Release.seeds(Realtime.Repo)' && /app/bin/server'"   realtime    34 seconds ago   Up 12 seconds (healthy)   
supabase-analytics               supabase/logflare:1.4.0            "sh -c '`cat <<EOF > run.sh && sh run.sh\n./logflare eval Logflare.Release.migrate\n./logflare start --sname logflare\nEOF\n`'"                         analytics   34 seconds ago   Up 20 seconds (healthy)   0.0.0.0:4000->4000/tcp, :::4000->4000/tcp
supabase-auth                    supabase/gotrue:v2.99.0            "gotrue"                                                                                                                                                auth        34 seconds ago   Up 13 seconds (healthy)   
supabase-db                      supabase/postgres:15.1.0.117       "docker-entrypoint.sh postgres -c config_file=/etc/postgresql/postgresql.conf -c log_min_messages=fatal"                                                db          35 seconds ago   Up 26 seconds (healthy)   0.0.0.0:5432->5432/tcp, :::5432->5432/tcp
supabase-edge-functions          supabase/edge-runtime:v1.22.3      "edge-runtime start --main-service /home/deno/functions/main"                                                                                           functions   34 seconds ago   Up 13 seconds             
supabase-imgproxy                darthsim/imgproxy:v3.8.0           "imgproxy"                                                                                                                                              imgproxy    35 seconds ago   Up 32 seconds (healthy)   8080/tcp
supabase-kong                    kong:2.8.1                         "bash -c 'eval \"echo \\\"$(cat ~/temp.yml)\\\"\" > ~/kong.yml && /docker-entrypoint.sh kong docker-start'"                                             kong        34 seconds ago   Up 14 seconds (healthy)   0.0.0.0:8000->8000/tcp, :::8000->8000/tcp, 8001/tcp, 0.0.0.0:8443->8443/tcp, :::8443->8443/tcp, 8444/tcp
supabase-meta                    supabase/postgres-meta:v0.68.0     "docker-entrypoint.sh npm run start"                                                                                                                    meta        34 seconds ago   Up 13 seconds (healthy)   8080/tcp
supabase-rest                    postgrest/postgrest:v11.2.0        "postgrest"                                                                                                                                             rest        34 seconds ago   Up 13 seconds             3000/tcp
supabase-storage                 supabase/storage-api:v0.40.4       "docker-entrypoint.sh node dist/server.js"                                                                                                              storage     34 seconds ago   Up 12 seconds (healthy)   5000/tcp
supabase-studio                  supabase/studio:20231023-7e2cd92   "docker-entrypoint.sh node studio/server.js"                                                                                                            studio      34 seconds ago   Up 12 seconds (healthy)   3000/tcp
supabase-vector                  timberio/vector:0.28.1-alpine      "/usr/local/bin/vector --config etc/vector/vector.yml"                                                                                                  vector      35 seconds ago   Up 32 seconds (healthy)   

4.管理页面登录

http://localhost:8000/

用户名和密码为.env设置变量

DASHBOARD_USERNAME=supabase
DASHBOARD_PASSWORD=123456@1

登录成功!

5.python client 连接

官方地址:

Supabase Python Client - Installing

# import supabase
from supabase.client import create_client
from pprint import pprint

spa_url = "http://localhost:8000"
spa_service_key = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.ewogICJyb2xlIjogInNlcnZpY2Vfcm9sZSIsCiAgImlzcyI6ICJzdXBhYmFzZSIsCiAgImlhdCI6IDE3MDA4NDE2MDAsCiAgImV4cCI6IDE4NTg2OTQ0MDAKfQ.STNyE67YP_kA2DGoDaoUNHQ0gxSBu9oYXKWXDnrMY-U"
spa_client = create_client(spa_url, spa_service_key)


data, count = spa_client.table('countries').select("*").execute()

# resp = spa_client.table('employees').select("*").execute()
pprint(data)

参考:

官方网址-Supabase | The Open Source Firebase Alternative

官方文档-Supabase Docs

中文文档-Supabase Docs

  • 4
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
要在Docker中部署Supabase,你可以按照以下步骤进行操作: 1. 首先,确保你已经安装了Docker和Docker Compose。你可以在官方网站上找到相关的安装指南。 2. 创建一个新的目录,用于存放Supabase的配置文件和数据。在该目录下,创建一个名为docker-compose.yml的文件,并使用文本编辑器打开它。 3. 在docker-compose.yml文件中,添加以下内容: ```yaml version: '3' services: supabase: image: supabase/supabase ports: - 5432:5432 - 5433:5433 - 80:80 volumes: - ./data:/var/lib/postgresql/data environment: - POSTGRES_PASSWORD=supabase ``` 这将创建一个名为supabase的Docker服务,使用Supabase的官方镜像,并将端口映射到本地的5432、5433和80端口。此外,它还将创建一个名为data的卷,用于持久化存储Supabase的数据。 4. 保存并关闭docker-compose.yml文件。 5. 打开终端或命令提示符,进入存放docker-compose.yml文件的目录,并运行以下命令来启动Supabase容器: ``` docker-compose up -d ``` 这将启动Supabase容器,并在后台运行。 6. 容器启动后,你可以通过访问http://localhost:80来访问Supabase的控制台。初始登录凭据为Email:`admin@supabase.io`,密码:`admin`。请注意,这是一个默认设置,你应该在生产环境中修改密码以确保安全性。 现在,你已经成功在Docker中部署Supabase。你可以使用Supabase控制台或Supabase的客户端库来管理和使用Supabase服务。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值