Как собрать свой «швейцарский нож» для файлов на Cloudflare и забыть о подписках

22 июн 2026

Репозиторий давно не обновлялся

Последнее обновление было 8 месяцев назад.

2,681
1,782
8
8 месяцев

Недавно наткнулся на CloudPaste и поймал себя на мысли: почему я не нашел этого раньше? Знакомая ситуация — нужно быстро перекинуть конфиг на сервер, расшарить скриншот коллеге или сохранить кусок кода, который не стыдно показать, но при этом не хочется плодить приватные гисты или мучиться с FTP. Обычно для этого держат зоопарк из Pastebin, Google Drive и каких-нибудь временных файлообменников.

CloudPaste — это попытка объединить всё перечисленное в одном self-hosted решении, которое работает поверх Cloudflare Workers. По сути, вы получаете личный менеджер файлов, Markdown-редактор и WebDAV-сервер в одном флаконе. Причем всё это «бессерверное», то есть за хостинг платить, скорее всего, не придется вовсе.

Что умеет этот комбайн

Проект подкупает своей всеядностью. Автор не стал ограничивать нас одним лишь хранилищем R2 от Cloudflare. Вы можете подключить практически всё, что угодно: S3-совместимые хранилища (AWS, Backblaze, MinIO), OneDrive, Google Drive и даже — внезапно — Telegram или Discord в качестве бэкенда для файлов.

Вот на что я обратил внимание при изучении репозитория:

  • Умная загрузка. Фронтенд умеет загружать файлы напрямую в облако (pre-signed uploads), поддерживает потоковую передачу и докачку после обрыва связи. Это критично, если вы решите закинуть что-то тяжелее текстового файла через лимитированные воркеры.
  • Предпросмотр всего подряд. Внутри встроена поддержка более 30 форматов. Картинки, видео, PDF, офисные документы и, конечно, код. Если формат совсем экзотический, система умеет прокидывать его через внешние просмотрщики вроде KKFileview.
  • Markdown на стероидах. Редактор Vditor поддерживает формулы, диаграммы и интеллект-карты. Написали заметку — и тут же получили прямую ссылку (как Raw на GitHub), которую можно скормить скрипту или вставить в документацию.
  • WebDAV. Это, пожалуй, самая полезная фича для тех, кто хочет видеть свое облако как обычный диск в системе. Монтируете CloudPaste и работаете с удаленными файлами через стандартный проводник или Finder.

Showcase

Реклама

Архитектура и технологии

Под капотом у CloudPaste довольно современный стек. Фронтенд написан на Vue 3 с Vite и TailwindCSS — работает шустро, выглядит опрятно. Бэкенд крутится на Hono (это сейчас, пожалуй, самый приятный фреймворк для Edge-сред).

Интересно реализована работа с данными: используется база данных Cloudflare D1 (SQLite на стероидах). Это позволяет хранить метаданные файлов, настройки доступа и ключи API без необходимости поднимать полноценный PostgreSQL или MySQL.

Для тех, кто не хочет связываться с Cloudflare, предусмотрен Docker. В этом случае вы просто запускаете контейнер, и он использует локальную файловую систему или внешние S3-бакеты.

Как это развернуть

Развертывание — отдельный плюс. Автор подготовил GitHub Actions, которые делают почти всю грязную работу за вас. Есть два пути:

  1. Unified (Единая установка). Фронтенд и бэкенд живут в одном воркере. Это дешевле (меньше запросов к API Cloudflare) и проще в настройке — никаких проблем с CORS.
  2. Separated (Раздельная установка). Бэкенд на Workers, фронтенд на Pages или Vercel. Подойдет, если вы хотите кастомизировать клиентскую часть или разнести нагрузку.

Если решите ставить через Docker, конфиг выглядит стандартно:

services:
  backend:
    image: dragon730/cloudpaste-backend:latest
    environment:
      - ENCRYPTION_SECRET=ваш_секретный_ключ
    volumes:
      - ./sql_data:/data
    ports:
      - "8787:8787"

  frontend:
    image: dragon730/cloudpaste-frontend:latest
    environment:
      - BACKEND_URL=http://backend:8787
    ports:
      - "8080:80"

Кстати, после первого запуска не забудьте сменить дефолтный пароль admin123. Это кажется очевидным, но в таких self-hosted проектах про безопасность часто забывают в первую очередь.

Практические сценарии

Зачем это нужно, когда есть Telegram или Google Drive?

Во-первых, приватность и контроль. Ваши данные лежат в вашем бакете (например, в R2), доступ к ним зашифрован вашим ключом. Во-вторых, CloudPaste отлично подходит для хостинга конфигурационных файлов. Создаете API-ключ с правами только на чтение конкретной папки и забираете оттуда конфиги через curl.

Еще один кейс — создание временных защищенных ссылок. Нужно передать пароль или чувствительный документ? Заливаете, ставите срок жизни ссылки или лимит на количество просмотров, и файл удалится сам.

WebDAV Mount

Стоит ли пробовать

Проект выглядит очень живым и активно обрастает фичами. Да, документация местами может показаться сумбурной (особенно разделы про настройку CORS для S3), но это общая беда всех инструментов, которые пытаются усидеть на нескольких стульях сразу.

Кому CloudPaste зайдет:

  • Разработчикам, которым нужно быстрое и бесплатное (в рамках лимитов Cloudflare) хранилище для личных нужд.
  • Тем, кто устал от ограничений публичных файлообменников.
  • Любителям автоматизации, которым нужен удобный API для работы с облачными файлами.

Если вам просто нужно хранить фотки кота, возможно, это избыточно. Но если вы ищете гибкий инструмент, который можно подстроить под свои задачи и при этом не тратить время на администрирование серверов — CloudPaste определенно заслуживает звезды на GitHub.

🍪 Мы используем файлы cookie и сервис аналитики Яндекс.Метрика, чтобы сайт работал лучше. Продолжая пользоваться devtrends.ru, вы соглашаетесь с обработкой данных согласно Политике конфиденциальности.