Skip to content

Instantly share code, notes, and snippets.

@sanbei011
Last active May 13, 2024 12:56
Show Gist options
  • Save sanbei011/a8a8c7443cdb301e95248f65f9829ad9 to your computer and use it in GitHub Desktop.
Save sanbei011/a8a8c7443cdb301e95248f65f9829ad9 to your computer and use it in GitHub Desktop.
Oneclick installation of Supabase 一键安装并配置Supabase
#!/bin/bash
# 检查是否安装Docker
if ! command -v docker &> /dev/null
then
echo "Docker未安装,正在安装Docker..."
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
else
echo "Docker已安装,跳过Docker安装步骤。"
fi
# 克隆Supabase仓库
echo "正在克隆Supabase仓库..."
git clone --depth 1 https://gitee.com/mirrors/supabase.git
# 进入docker目录
cd supabase/docker
# 提示用户输入必要的环境变量
echo "请设置以下环境变量:"
read -p "请输入数据库密码(POSTGRES_PASSWORD): " POSTGRES_PASSWORD
echo
read -p "请输入Dashboard密码(DASHBOARD_PASSWORD): " DASHBOARD_PASSWORD
echo
# 设置静态环境变量,这里也可以从官网获取
JWT_SECRET=j0pax1l852eykhue1yffeps7uwptdrl7xk8lvndz
ANON_KEY=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.ewogICJyb2xlIjogImFub24iLAogICJpc3MiOiAic3VwYWJhc2UiLAogICJpYXQiOiAxNzE1NTI5NjAwLAogICJleHAiOiAxODczMjk2MDAwCn0.pToNS7MZdTZNlgUdYCUmZCHZNL2nr00iCN6SLnEM6j0
SERVICE_ROLE_KEY=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.ewogICJyb2xlIjogInNlcnZpY2Vfcm9sZSIsCiAgImlzcyI6ICJzdXBhYmFzZSIsCiAgImlhdCI6IDE3MTU1Mjk2MDAsCiAgImV4cCI6IDE4NzMyOTYwMDAKfQ.mE-smIVJLao9bncSJGMMgWTU1QLSH62ZxenROG0Te6o
echo "正在检查当前目录"
echo "当前目录:"
pwd
echo "目录内容:"
ls -la
# 检查并复制.env.example文件
if [ -f .env.example ]; then
echo "找到.env.example文件,正在创建.env文件..."
cp .env.example .env
echo "正在写入环境变量到.env文件..."
sed -i "s/^POSTGRES_PASSWORD=.*$/POSTGRES_PASSWORD=$POSTGRES_PASSWORD/" .env
sed -i "s/^DASHBOARD_PASSWORD=.*$/DASHBOARD_PASSWORD=$DASHBOARD_PASSWORD/" .env
sed -i "s/^JWT_SECRET=.*$/JWT_SECRET=$JWT_SECRET/" .env
sed -i "s/^ANON_KEY=.*$/ANON_KEY=$ANON_KEY/" .env
sed -i "s/^SERVICE_ROLE_KEY=.*$/SERVICE_ROLE_KEY=$SERVICE_ROLE_KEY/" .env
echo "环境变量写入完成。"
else
echo ".env.example文件不存在,请检查路径和克隆状态"
fi
# 检查kong.yml文件
if [ -f ./volumes/api/kong.yml ]; then
echo "已找到kong.yml文件,正在修改..."
sed -i "s/\$SUPABASE_ANON_KEY/$ANON_KEY/" ./volumes/api/kong.yml
sed -i "s/\$SUPABASE_SERVICE_KEY/$SERVICE_ROLE_KEY/" ./volumes/api/kong.yml
echo "kong.yml文件修改完成。"
else
echo "kong.yml文件不存在,请检查路径"
fi
# 启动Supabase
# Pull the latest images
echo "所有环境变量已设置"
echo "正在拉取镜像..."
docker compose pull
echo "镜像拉取完成。"
# Start the services
echo "正在启动服务..."
# Start the services
docker compose up -d
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment