Last active
May 13, 2024 12:56
-
-
Save sanbei011/a8a8c7443cdb301e95248f65f9829ad9 to your computer and use it in GitHub Desktop.
Oneclick installation of Supabase 一键安装并配置Supabase
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/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