使用 Docker 自托管 Supabase、Grafana、Uptime Kuma、NocoDB、Dokku、Appwrite、N8N、Redash、Jitsi、Plausible 和 Nextcloud
SAAS(软件即服务)模式允许用户在线访问软件而无需下载。这是一种基于租金的模式,您需要根据使用情况付费,随时可以停止使用。
在本文中,我们将看到 11 个顶级付费 SaaS 产品的替代方案,您只需要一个在云上运行的服务器,就可以托管您的 SaaS 产品。
让我们看看流行 SaaS 产品的替代方案 -
您可以开始使用 Supabase 替代 Firebase,它提供了与 Firebase 相同的所有功能。您可以选择自托管模式或他们的云服务,如果您不想自己托管的话。
更多信息请参考 GitHub - https://github.com/supabase/supabase
如何使用 Docker 安装 Supabase -
# 获取代码
git clone --depth 1 https://github.com/supabase/supabase
# 进入 docker 文件夹
cd supabase/docker
# 复制假的环境变量
cp .env.example .env
# 拉取最新镜像
docker compose pull
# 启动服务(以分离模式)
docker compose up -d
Grafana 是一个用于可视化数据的平台,允许用户从许多不同来源(包括 Prometheus、Loki、Elasticsearch、InfluxDB、Postgres 等)查看指标、日志和跟踪数据。
如何使用 Docker 安装 Grafana -
docker run -d -p 3000:3000 --name=grafana grafana/grafana-enterprise
更多详细信息请参考这里
Uptime Kuma 是 Uptime Robot 的绝佳替代品,后者是一款用于监控网站正常运行时间的付费软件。我们可以在我们的服务器上托管 Uptime Kuma 并开始使用其出色的功能,没有任何限制。
如何使用 Docker 安装 Uptime Kuma -
docker run -d --restart=always -p 3001:3001 -v uptime-kuma:/app/data --name uptime-kuma louislam/uptime-kuma:1
NocoDb 是一个很好的选择,可以在没有编码的情况下开始使用您的数据库。它将您的数据库用作电子表格,您可以在其中添加、编辑记录。
使用 Docker 安装 NocoDB -
# 使用 PostgreSQL
docker run -d --name nocodb-postgres \
-v "$(pwd)"/nocodb:/usr/app/data/ \
-p 8080:8080 \
-e NC_DB="pg://host.docker.internal:5432?u=root&p=password&d=d1" \
-e NC_AUTH_JWT_SECRET="569a1821-0a93-45e8-87ab-eb857f20a010" \
nocodb/nocodb:latest
--------------------------------------------------------
# 使用 SQLite:挂载卷 `/usr/app/data/` 对于避免数据丢失至关重要。
docker run -d --name nocodb \
-v "$(pwd)"/nocodb:/usr/app/data/ \
-p 8080:8080 \
nocodb/nocodb:latest
Dokku 是基于 Docker 的 PaaS 产品,用作 Heroku、Render 的替代方案,用于部署并添加到您的承诺中。它会自动从应用代码中检测技术,并提供与 GitHub 的 CI/CD。
安装:官方指南
# 对于 Debian 系统,通过 apt-get 安装 Dokku
wget -NP . https://dokku.com/install/v0.34.8/bootstrap.sh
sudo DOKKU_TAG=v0.34.8 bash bootstrap.sh
Appwrite 是 Firebase 的另一个不错选择,它提供 SDK 和 API,可在几分钟内将您的应用连接到后端。它具有自托管和基于云的模式。
使用 Docker 安装 Appwrite -
docker run -it --rm \
--volume /var/run/docker.sock:/var/run/docker.sock \
--volume "$(pwd)"/appwrite:/usr/src/code/appwrite:rw \
--entrypoint="install" \
appwrite/appwrite:1.5.10
具有公平代码许可的工作流自动化解决方案,是免费且开源的。轻松自动化跨多个服务的任务。
使用 Docker 安装 n8n -
docker volume create n8n_data
docker run -it --rm --name n8n -p 5678:5678 -v n8n_data:/home/node/.n8n docker.n8n.io/n8nio/n8n
利用数据组织您的业务。创建仪表板,共享您的数据,并轻松连接到任何数据源。
使用 Docker 安装 Redash -
git clone https://github.com/getredash/redash.git
cd redash
cp .env.example .env
docker-compose -f docker-compose.production.yml up -d
您可以使用 Jitsi Meet - 一个安全、用户友好且可扩展的视频会议应用程序 - 作为独立程序或将其集成到您的网站中。
使用 Docker 安装 Jitsi -
// 下载
wget $(curl -s https://api.github.com/repos/jitsi/docker-jitsi-meet/releases/latest | grep 'zip' | cut -d\" -f4)
// 解压包
unzip <filename>
// 通过复制和调整 env.example 创建 .env 文件
cp env.example .env
// 在 .env 文件的安全部分选项中设置强密码,运行以下 bash 脚本
./gen-passwords.sh
// 创建所需的 CONFIG 目录
mkdir -p ~/.jitsi-meet-cfg/{web,transcripts,prosody/config,prosody/prosody-plugins-custom,jicofo,jvb,jigasi,jibri}
// 运行 docker
docker compose up -d
//在 https://localhost:8443(或其他端口,如果您编辑了 .env 文件)访问 Web UI。
更多详细信息请参考**官方文档**
一个无需麻烦、开源、小巧(< 1 KB)且私密的在线分析替代品,可替代 Google Analytics。
使用 Docker 安装 Plausible Analytics -
git clone https://github.com/plausible/community-edition
cd community-edition
编辑 plausible-conf.env
BASE_URL=replace-me
SECRET_KEY_BASE=replace-me
TOTP_VAULT_KEY=replace-me
运行 docker compose
docker compose up -d
Nextcloud 是 Google Drive 的开源替代品,用于在用户之间存储和共享数据。
使用 Docker 安装 Nextcloud -
$ docker run -d \
-v nextcloud:/var/www/html \
nextcloud