| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
CloudPaste 需要你自己部署后端服务(支持 Docker 一键部署)。
CloudPaste 是一个跨设备云同步工具,而非本地剪贴板管理器:
如果你只需要在单台电脑上管理剪贴板历史,建议使用专门的本地剪贴板工具。 如果你需要在多个设备间无缝同步复制内容,CloudPaste 是理想选择。
CloudPaste 采用自建后端服务的架构设计,而非传统的云服务模式:
┌─────────────┐ ┌─────────────────┐ ┌─────────────┐
│ 桌面端/Web │ ◄──WebSocket──► │ 你的后端服务器 │ ◄──WebSocket──► │ 桌面端/Web │
│ (设备 A) │ │ (自建部署) │ │ (设备 B) │
└─────────────┘ └─────────────────┘ └─────────────┘
▲ │ ▲
│ │ 存储 │
└───────────────── 实时同步 ────────┼──────────── 实时同步 ─────────────┘
▼
┌──────────┐
│ SQLite │
│ 数据库 │
└──────────┘
后端服务通过 WebSocket 实现实时双向通信,当任一设备复制内容时,立即推送到所有在线设备。
桌面端应用 - 基于 Tauri 打造的轻量级原生应用
Web 网页版 - 无需安装,浏览器即可使用
重要说明:CloudPaste 是一个需要自建后端服务的应用。你需要先部署后端服务,然后客户端(桌面应用或 Web 版)连接到你的服务器。这样可以确保你的剪贴板数据完全由自己掌控,更加安全可靠。
后端服务基于 FastAPI + WebSocket,提供实时同步能力。
这是最简单快速的部署方式:
# 拉取镜像并运行
docker run -d \
--name cloudpaste \
--restart unless-stopped \
-p 5280:5280 \
-v ./data:/cloudpaste \
ghcr.io/mrtian2016/cloudpaste:latest参数说明:
自定义端口示例:
# 使用 8000 端口
docker run -d \
--name cloudpaste \
--restart unless-stopped \
-p 8000:5280 \
-v ./data:/cloudpaste \
ghcr.io/mrtian2016/cloudpaste:latest启动后访问 http://your-server-ip:5280/docs 查看 API 文档,确认服务正常运行。
创建 docker-compose.yml:
version: '3.8'
services:
cloudpaste:
image: ghcr.io/mrtian2016/cloudpaste:latest
container_name: cloudpaste
restart: unless-stopped
# 只需要映射一个目录!
volumes:
- ./data:/cloudpaste
# 暴露端口
ports:
- "5280:5280"启动服务:
docker-compose up -d查看日志:
docker-compose logs -f停止服务:
docker-compose down⚠️ macOS 用户注意事项
首次打开应用时,macOS 系统可能会提示 "CloudPaste.app"已损坏,无法打开。你应该将它移到废纸篓。
这是因为应用未经过 Apple 验证。请按以下步骤解决:
# 如果安装在应用程序文件夹
sudo xattr -r -d com.apple.quarantine /Applications/CloudPaste.app
# 或者如果在其他位置,替换为实际路径
sudo xattr -r -d com.apple.quarantine /path/to/CloudPaste.app💡 这是什么操作? xattr 命令用于移除 macOS 的隔离属性(quarantine)标记。这个标记会阻止从互联网下载的未签名应用运行。此操作仅移除限制,不会修改应用本身。
# 创建 Python 环境
mamba create -n cloudpaste python=3.12
conda activate cloudpaste
# 安装依赖
cd backend
mamba install loguru fastapi aiosqlite pydantic-settings -y
# 启动服务(默认端口 8000)
python main.py后端 API 文档:http://localhost:8000/docs
# 安装依赖(在项目根目录)
pnpm install
# 启动 Web 版(端口 3000)
pnpm dev# 开发模式
pnpm dev:desktop
# 构建生产版本
pnpm build:desktop构建产物位于 desktop/src-tauri/target/release/
| 平台 | 支持情况 | 说明 |
|---|---|---|
| 🪟 Windows | ✅ 完全支持 | 桌面应用 + Web 版 |
| 🍎 macOS | ✅ 完全支持 | 桌面应用 + Web 版 |
| 🐧 Linux | ✅ 完全支持 | 桌面应用 + Web 版 |
| 📱 iOS / Android | ⚠️ Web 版 | 通过浏览器使用 |
cloudpaste/
├── backend/ # FastAPI 后端服务
│ ├── main.py # 应用入口
│ ├── routers/ # API 路由
│ ├── database.py # 数据库操作
│ └── models.py # 数据模型
│
├── frontend/ # Next.js Web 应用
│ ├── app/ # 页面和路由
│ └── public/ # 静态资源
│
├── desktop/ # Tauri 桌面应用
│ ├── app/ # Next.js UI
│ ├── src-tauri/ # Rust 后端
│ └── lib/ # Tauri 工具函数
│
└── packages/ # 共享代码
└── shared/ # 组件、hooks、状态管理
├── components/ # UI 组件
├── hooks/ # React Hooks
├── store/ # Zustand 状态管理
├── lib/ # 工具函数
└── types/ # TypeScript 类型
技术栈:Next.js 16 + React 19 + TypeScript + Tailwind CSS 4 + Tauri 2 + FastAPI + SQLite
Docker 镜像会将所有数据存储在 /cloudpaste 目录,包括:
只需要映射一个目录即可:
-v ./data:/cloudpaste数据会保存在宿主机的 ./data 目录中,容器重启或更新不会丢失数据。
为了安全性和更好的性能,建议使用 Nginx 或 Caddy 进行反向代理,并配置 HTTPS:
Nginx 配置示例:
server {
listen 80;
server_name paste.yourdomain.com;
return 301 https://$server_name$request_uri;
}
server {
listen 443 ssl http2;
server_name paste.yourdomain.com;
ssl_certificate /path/to/cert.pem;
ssl_certificate_key /path/to/key.pem;
location / {
proxy_pass http://localhost:5280;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
# WebSocket 支持
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_read_timeout 86400;
}
}Caddy 配置示例(更简单):
paste.yourdomain.com {
reverse_proxy localhost:5280
}Caddy 会自动配置 HTTPS 证书!
Web 版和桌面端支持在登录时配置服务器地址,无需修改代码。
配置示例:
CloudPaste 的设计理念是让用户完全掌控自己的数据。剪贴板内容可能包含敏感信息(密码、Token、私密文本等),将其存储在第三方服务器存在隐私风险。通过自建服务:
非常简单!使用 Docker 只需一条命令:
docker run -d -p 5280:5280 \
-v ./data:/cloudpaste \
ghcr.io/mrtian2016/cloudpaste:latest如果你有 VPS 或 NAS,5 分钟内就能部署完成。
需要什么样的服务器?最低配置:
几乎任何服务器、NAS、甚至树莓派都能运行。推荐:
数据完全由你掌控,不会因为第三方服务问题而丢失。
可以多人使用吗?可以!CloudPaste 支持多用户:
可以通过 Web 版使用:
几种方案:
桌面应用:
Web 版:
桌面应用会监听系统剪贴板,但:
欢迎提交 Issue 和 Pull Request!
MIT License
CloudPaste - 让剪贴板无处不在
| Back | FazBrowse Home | New Git URL |