An open API service indexing awesome lists of open source software.

https://github.com/caomeiyouren/cookie-cloudflare

基于 hono 实现的兼容 CookieCloud API 的云函数服务,支持 Cloudflare Workers 部署
https://github.com/caomeiyouren/cookie-cloudflare

Last synced: 7 days ago
JSON representation

基于 hono 实现的兼容 CookieCloud API 的云函数服务,支持 Cloudflare Workers 部署

Awesome Lists containing this project

README

          

cookie-cloudflare



Version

Docker Pulls


GitHub Workflow Status



Documentation


Maintenance


License: AGPL-3.0

> 基于 hono 实现的兼容 [CookieCloud](https://github.com/easychen/CookieCloud) API 的云函数服务,支持 [Cloudflare Workers](https://developers.cloudflare.com/workers/) 部署,数据文件存储到 [Cloudflare R2 Storage](https://developers.cloudflare.com/r2/)

`cookie-cloudflare` 支持原生 `crypto` 解密,速度比 `crypto-js` 快数十倍。

由于修改了解密算法,因此前端的加密算法也需要修改,具体请参考本人 Fork 的版本 [CookieCloud](https://github.com/CaoMeiYouRen/CookieCloud)

## 🏠 主页

[https://github.com/CaoMeiYouRen/cookie-cloudflare#readme](https://github.com/CaoMeiYouRen/cookie-cloudflare#readme)

## 📦 依赖要求

- node >=18

## 🚀 部署

### Cloudflare Workers 部署

#### 一键部署

点击下方的按钮一键前往 Cloudflare Workers 部署

[![Deploy to Cloudflare Workers](https://deploy.workers.cloudflare.com/button)](https://deploy.workers.cloudflare.com/?url=https://github.com/CaoMeiYouRen/cookie-cloudflare)

#### 手动部署

1. 创建 `Cloudflare R2 Storage`

请参考 [Get started](https://developers.cloudflare.com/r2/get-started/) 创建一个 `R2 bucket`

在 `cookie-cloudflare` 中,默认的 `R2 bucket`名称是 `cookie-cloudflare`。

2. 修改 `wrangler.toml` 配置文件。

```toml
name = "cookie-cloudflare"
main = "dist/app.mjs"
minify = true
compatibility_date = "2024-10-20"
compatibility_flags = ["nodejs_compat"]

[[r2_buckets]]
binding = "R2"
bucket_name = "cookie-cloudflare" # 修改此处的 bucket_name 为你创建的 R2 bucket 名称

[[kv_namespaces]] # KV 是可选的,用于加速读取。如果你的读取量远大于写入量,建议启用。
binding = "KV"
id = "xxxx" # 修改此处的 id 为你创建的 KV 的 id
```

3. 构建并部署到 `Cloudflare Workers`

```sh
npm run build && npm run deploy:wrangler
```

### Docker 镜像

在通过 Docker 部署的情况下,`cookie-cloudflare` 和 `CookieCloud` 的实现~~是一样的~~~~,因此可以直接使用 `CookieCloud`。~~ **是不一样的。**

通过 Docker 部署,请参考以下内容。

支持两种注册表:

- Docker Hub: [`caomeiyouren/cookie-cloudflare`](https://hub.docker.com/r/caomeiyouren/cookie-cloudflare)
- GitHub: [`ghcr.io/caomeiyouren/cookie-cloudflare`](https://github.com/CaoMeiYouRen/cookie-cloudflare/pkgs/container/cookie-cloudflare)

支持以下架构:

- `linux/amd64`
- `linux/arm64`

有以下几种 tags:

| Tag | 描述 | 举例 |
| :------------- | :------- | :------------ |
| `latest` | 最新 | `latest` |
| `{YYYY-MM-DD}` | 特定日期 | `2024-06-07` |
| `{sha-hash}` | 特定提交 | `sha-0891338` |
| `{version}` | 特定版本 | `1.2.3` |

### Docker Compose 部署

下载 [docker-compose.yml](https://github.com/CaoMeiYouRen/cookie-cloudflare/blob/master/docker-compose.yml)

```sh
wget https://raw.githubusercontent.com/CaoMeiYouRen/cookie-cloudflare/refs/heads/master/docker-compose.yml
```

检查有无需要修改的配置

```sh
vim docker-compose.yml # 也可以是你喜欢的编辑器
```
启动

```sh
docker-compose up -d
```

在浏览器中打开 `http://{Server IP}:3000` 即可查看结果

### Node.js 部署

确保本地已安装 Node.js 和 pnpm。

```sh
# 下载源码
git clone https://github.com/CaoMeiYouRen/cookie-cloudflare.git --depth=1
cd cookie-cloudflare
# 安装依赖
pnpm i --frozen-lockfile
# 构建项目
pnpm run build
# 启动项目
pnpm run start
```

在浏览器中打开 `http://{Server IP}:3000` 即可查看结果

### Bun 部署

确保本地已安装 [bun](https://bun.sh/)

```sh
# 下载源码
git clone https://github.com/CaoMeiYouRen/cookie-cloudflare.git --depth=1
cd cookie-cloudflare
# 安装依赖
bun install
# 构建项目
bun run build
# 启动项目
bun run start:bun
```

在浏览器中打开 `http://{Server IP}:3000` 即可查看结果

### Vercel 部署(暂不支持)

暂不支持,如有需要,请提 issue。

## 🛠️ 开发

```sh
npm run dev:wrangler
```

## 🔧 编译

```sh
npm run build
```

## 🔍 Lint

```sh
npm run lint
```

## 💾 Commit

```sh
npm run commit
```

## 👤 作者

**CaoMeiYouRen**

* Website: [https://blog.cmyr.ltd/](https://blog.cmyr.ltd/)

* GitHub: [@CaoMeiYouRen](https://github.com/CaoMeiYouRen)

## 🤝 贡献

欢迎 贡献、提问或提出新功能!
如有问题请查看 [issues page](https://github.com/CaoMeiYouRen/cookie-cloudflare/issues).
贡献或提出新功能可以查看[contributing guide](https://github.com/CaoMeiYouRen/cookie-cloudflare/blob/master/CONTRIBUTING.md).

## 💰 支持

如果觉得这个项目有用的话请给一颗⭐️,非常感谢

## 🌟 Star History

[![Star History Chart](https://api.star-history.com/svg?repos=CaoMeiYouRen/cookie-cloudflare&type=Date)](https://star-history.com/#CaoMeiYouRen/cookie-cloudflare&Date)

## 📝 License

Copyright © 2024 [CaoMeiYouRen](https://github.com/CaoMeiYouRen).

This project is [AGPL-3.0](https://github.com/CaoMeiYouRen/cookie-cloudflare/blob/master/LICENSE) licensed.

***
_This README was generated with ❤️ by [cmyr-template-cli](https://github.com/CaoMeiYouRen/cmyr-template-cli)_