跳到主要内容

最近在Vercel上搞的两个小服务

· 阅读需 3 分钟
故事的程序猿👨🏻‍💻
一个后端打酱油程序猿

最近鼓捣了两个小服务,都可以在 Vercel 托管!

Umami

网站访问统计

开源地址:https://github.com/umami-software/umami

可以在服务器上用 docker 托管,docker-compose.yml 如下所示:

注意

值得注意的是修改下 pg 的密码和数据库文件映射目录。

services:
umami:
container_name: umami
image: ghcr.io/umami-software/umami:postgresql-latest
ports:
- "3000:3000"
environment:
DATABASE_URL: postgresql://umami:123456@db:5432/umami
DATABASE_TYPE: postgresql
APP_SECRET: 123456
depends_on:
db:
condition: service_healthy
restart: always
healthcheck:
test: ["CMD-SHELL", "curl http://localhost:3000/api/heartbeat"]
interval: 5s
timeout: 5s
retries: 5
db:
container_name: umami-db
image: postgres:15-alpine
environment:
POSTGRES_DB: umami
POSTGRES_USER: umami
POSTGRES_PASSWORD: 123456
volumes:
- /opt/myapp/umami/umami-db-data:/var/lib/postgresql/data
restart: always
healthcheck:
test:
[
"CMD-SHELL",
"pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB}",
]
interval: 5s
timeout: 5s
retries: 5

这个服务可以在 Vercel 托管,很方面。

首先登录 Vercel,选择Storage创建一个pg数据库,你会得到一个链接的字符串。像下面这样 👇🏻

postgres://xxx:xxx@ep-red-dawn-a15qwnab.ap-southeast-1.aws.neon.tech:5432/verceldb?sslmode=require

登录GitHub fork 仓库https://github.com/umami-software/umami

再回到 Vercel,新建项目选择我们 fork 的仓库,系统会默认识别出框架,我们只需要再添加一个环境变量:

DATABASE_URL:postgres://xxx:xxx@ep-red-dawn-a15qwnab.ap-southeast-1.aws.neon.tech:5432/verceldb?sslmode=require

然后直接部署即可。

有个简单的方式:或者点击我开启一键部署 前提也是要新建个数据库哦。

Moe-Counter

开源地址:https://github.com/journey-ad/Moe-Counter

这是一个网站访问统计结果展示的项目,大概这个样子:

在线的服务 https://moe-counter.glitch.me/ 没有梯子访问不了,你可以在服务器上自托管,或者在 Vercel 上。

该项目不能直接部署在 Vercel 上,这位同学 https://github.com/grbnb/moe-counter-vercel 把项目修改了一下,使它可以部署在 Vercel 上。你可以 fork 项目,然后在 Vercel 新建项目或者一键部署到 Vercel

它需要数据库支持,如果部署在 Vercel 只能使用 MongoDB,所以需要注册MongoDB 得到一个免费存储空间。可以参考:Twikoo-MongoDB Atlas

部署的时候依然需要如下环境变量:

KeyDescription
DB_URLmongodb+srv://account:passwd@***.***.***.mongodb.net/db_count MongoDB login: mongodb
DB_UPSERT[Insert new document]trueorfalse, default=false(Update only existing documents)
DELAY_SEC[Delayed writing to database] set scope 1-180sec ,default=60
VIEW_LEN[Moe-Counter display length] set scope 5-18 , default=7

填完完毕后,直接部署。或者在项目的 Settings->Environment Variables 中修改,然后 Deployments 中选择最新的一条记录 Redeploy 即可。

部署完毕即可访问配置页面,设置名称和主题后会得到一个图片的链接,放在你需要的地方即可。

文章标题:最近在Vercel上搞的两个小服务
版权声明:内容遵守
许可协议。转载请注明出处!
侵权提示:部分信息可能来源于网络。如发现有侵权,请随时联系删除!

相关推荐

2024-09-20|植物大战僵尸杂交版「用户数据备份」#软件工具#植物大战僵尸

神评论