Kendi sunucunda çalışan, Google Drive’a para ödemeden dosya bulutu. Go + PostgreSQL + React.
Amaç: düşük kaynaklı Linux VPS üzerinde self-host; Windows ağ sürücüsü (WebDAV); ortak alanlar, paylaşım, sürümler. Tamamen ücretsiz MIT açık kaynak.
- Kişisel drive, Shared Drives, ACL, paylaşım linkleri, çöp, yıldız, arama
- Windows ağ sürücüsü: WebDAV (
/dav) +net use/packaging/windows/mount-drive.ps1 - Tray sync istemcisi (ikincil; birincil erişim WebDAV mount)
- Admin paneli (kullanıcı ve kota yönetimi)
- Merkezi güncelleme kontrolü (
UPDATE_MANIFEST_URL) - Android istemci + QR giriş; kota varsayılanı disk kapasitesine göre
- Yedekleme işlemi sunucunuzu çok yormayacak şekilde güvenli teker teker yapılmaktadır.
- Sunucu işlemciniz düşükde olsa sunucunuzu dar boğaz yapmayacak şekilde yavaş ve tek tek yapmaktadır.
Kullanıcı sayısı sınırı yok. Yeni kullanıcı kotası varsayılan olarak DATA_DIR disk kapasitesine ayarlanır (FREE_QUOTA_BYTES=0 / auto); Admin panelinden varsayılan kota ve kullanıcı bazlı kota değiştirilebilir.
# Gerekenler: Go 1.23+, Node 20+, PostgreSQL
export DATABASE_URL=postgres://...
export SESSION_SECRET=en-az-16-karakter-gizli
export SHARE_PASSWORD_SALT=en-az-16-karakter-tuz
cd web && npm ci && npm run build && cd ..
go run ./cmd/serverWindows ağ sürücüsü:
powershell -ExecutionPolicy Bypass -File packaging\windows\mount-drive.ps1 -ServerUrl "https://drive.ornek.com" -DriveLetter ZCompose dosyaları secret hardcode etmez. Şunları ortam değişkeni olarak verin:
POSTGRES_PASSWORDSESSION_SECRET(≥16, placeholder değil)SHARE_PASSWORD_SALT(≥16 production’da)
Üretimde daha önce commit’lenmiş örnek secret’lar kullanıldıysa hemen rotate edin.
İsteğe bağlı:
ALLOW_REGISTRATION=true|falseUPDATE_MANIFEST_URL=https://.../trdriver-updates.jsonFREE_QUOTA_BYTES=0(0/auto/ boş = DATA_DIR disk kapasitesi; sabit bayt da verilebilir)
Örnek merkezi güncelleme manifest’i: docs/update-manifest.example.json
Bakınız SECURITY.md. Son denetimde düzeltilen kritik maddeler: public share IDOR, share XSS, compose secret sızıntısı, content_manager yetki yükseltmesi, admin’in device token ile erişiminin kapatılması.
GitHub: https://github.com/turuncuhouse-ctrl/tr-driver
Kurulum:
docs/INSTALL_DOCKER.md— Docker + Portainerdocs/INSTALL_VPS.md— Docker’sız VPSdocs/DEPLOY_VPS.md— secret rotatedocs/GITHUB.md
Kod: MIT — tamamen ücretsiz kullanın, değiştirin, dağıtın.