Coolify Kurulumu: Self-Hosted PaaS ile Uygulama Deployment
Coolify kurulumu, Docker ve Git entegrasyonu, uygulama deployment, veritabanı yönetimi, SSL sertifikaları, environment variables ve Heroku/Netlify alternatifi self-hosted PaaS.
Vaultwarden (Bitwarden uyumlu) Docker kurulumu, HTTPS yapılandırması, admin panel, organizasyon ve koleksiyon yönetimi, Bitwarden istemcileri ile kullanım.
Vaultwarden, Bitwarden'ın resmi sunucu uygulamasının Rust ile yazılmış hafif ve topluluk destekli alternatifidir. Resmi Bitwarden sunucusuna kıyasla çok daha az kaynak tüketir ve tüm Bitwarden istemcileriyle (web, masaüstü, mobil, tarayıcı eklentisi) tam uyumludur. Kendi sunucunuzda barındırarak şifrelerinizin kontrolünü tamamen elinizde tutabilirsiniz.
Vaultwarden (eski adıyla bitwarden_rs), Bitwarden API'sini Rust programlama diliyle yeniden uygulayan açık kaynaklı bir projedir. Öne çıkan özellikleri:
version: '3.8'
services:
vaultwarden:
image: vaultwarden/server:latest
container_name: vaultwarden
restart: unless-stopped
environment:
DOMAIN: "https://vault.example.com"
SIGNUPS_ALLOWED: "true"
ADMIN_TOKEN: "guclu-admin-token-buraya"
WEBSOCKET_ENABLED: "true"
LOG_LEVEL: "warn"
volumes:
- ./vw-data:/data
ports:
- "127.0.0.1:8080:80"
- "127.0.0.1:3012:3012"
# Container'ı başlat
docker compose up -d
# Logları kontrol et
docker logs vaultwarden -f
ADMIN_TOKEN için güçlü ve rastgele bir değer kullanın. openssl rand -base64 48 komutuyla güvenli token üretebilirsiniz.
# Güvenli admin token üret
openssl rand -base64 48
# Argon2 hash ile daha güvenli token (önerilir)
docker run --rm -it vaultwarden/server /vaultwarden hash --preset owasp
Vaultwarden HTTPS gerektirdiğinden Nginx reverse proxy kurulumu zorunludur.
server {
listen 80;
server_name vault.example.com;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl http2;
server_name vault.example.com;
ssl_certificate /etc/letsencrypt/live/vault.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/vault.example.com/privkey.pem;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers HIGH:!aNULL:!MD5;
client_max_body_size 128M;
location / {
proxy_pass http://127.0.0.1:8080;
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;
}
location /notifications/hub {
proxy_pass http://127.0.0.1:3012;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
location /notifications/hub/negotiate {
proxy_pass http://127.0.0.1:8080;
}
}
# Certbot kurulumu
apt install certbot python3-certbot-nginx -y
# SSL sertifikası al
certbot --nginx -d vault.example.com
# Otomatik yenileme testi
certbot renew --dry-run
Admin paneline https://vault.example.com/admin adresinden erişebilirsiniz.
# Kayıt kısıtlama (kurulum sonrası kapatın)
SIGNUPS_ALLOWED=false
# Sadece belirli domainlere kayıt izni
SIGNUPS_DOMAINS_WHITELIST=example.com,company.org
# Davet sistemi
INVITATIONS_ALLOWED=true
# E-posta doğrulama
SIGNUPS_VERIFY=true
environment:
SMTP_HOST: "smtp.gmail.com"
SMTP_FROM: "vault@example.com"
SMTP_PORT: "587"
SMTP_SECURITY: "starttls"
SMTP_USERNAME: "vault@example.com"
SMTP_PASSWORD: "uygulama-sifresi"
Admin panelinden Users → Invite User ile e-posta daveti gönderebilirsiniz.
# CLI ile kullanıcı davet et
docker exec vaultwarden /vaultwarden invite --email user@example.com
Vaultwarden'da organizasyonlar ücretsizdir (resmi Bitwarden'da ücretlidir):
https://vault.example.com adresini girin1. Bitwarden uygulamasını açın
2. Giriş ekranında bölge seçiciye dokunun
3. "Self-hosted" seçin
4. Sunucu URL: https://vault.example.com
5. Kaydet ve giriş yapın
Dosya → Ayarlar → Sunucu URL'si
https://vault.example.com
# Vaultwarden verilerini yedekle
tar -czf vaultwarden-backup-$(date +%Y%m%d).tar.gz ./vw-data/
# Otomatik yedekleme scripti
cat > /etc/cron.daily/vaultwarden-backup << 'EOF'
#!/bin/bash
BACKUP_DIR="/backups/vaultwarden"
mkdir -p $BACKUP_DIR
tar -czf $BACKUP_DIR/backup-$(date +%Y%m%d-%H%M%S).tar.gz /opt/vaultwarden/vw-data/
# 30 günden eski yedekleri sil
find $BACKUP_DIR -name "backup-*.tar.gz" -mtime +30 -delete
EOF
chmod +x /etc/cron.daily/vaultwarden-backup
REXE VPS sunucularında Vaultwarden mükemmel çalışır. 1 GB RAM ve 1 vCPU ile küçük ekipler için yeterlidir.
Vaultwarden, Bitwarden API'sini Rust ile yeniden yazan topluluk projesidir. Resmi Bitwarden sunucusuna göre çok daha az kaynak tüketir (512 MB RAM yeterli). Organizasyon ve premium özellikler Vaultwarden'da ücretsizken resmi sunucuda ücretlidir. Tüm Bitwarden istemcileriyle tam uyumludur.
Hayır, Bitwarden istemcileri güvenlik nedeniyle HTTPS zorunlu kılar. Geçerli bir SSL sertifikası olmadan istemciler bağlantı kurmayı reddeder. Let's Encrypt ile ücretsiz SSL sertifikası alabilirsiniz. Yerel ağda kullanmak için self-signed sertifika da çalışır ancak istemcilerde manuel güven eklemeniz gerekir.
ADMIN_TOKEN değerinin docker-compose.yml dosyasında doğru tanımlandığını kontrol edin. Argon2 hash kullandıysanız '$' karakterlerinin YAML'da kaçış karakteriyle yazılması gerekebilir. Token'ı tek tırnak içine alın: ADMIN_TOKEN: '$$argon2id$$...'. Container'ı yeniden başlatın: docker compose restart vaultwarden.
Nginx yapılandırmasında /notifications/hub konumunun 3012 portuna proxy edildiğinden emin olun. WEBSOCKET_ENABLED=true ortam değişkeninin ayarlı olduğunu kontrol edin. Nginx'te 'proxy_set_header Upgrade $http_upgrade' ve 'proxy_set_header Connection upgrade' direktiflerinin eklendiğini doğrulayın.
Tüm veriler ./vw-data/ dizininde saklanır. Bu dizini düzenli olarak yedekleyin: tar -czf backup.tar.gz ./vw-data/. SQLite veritabanı için container çalışırken de yedek alabilirsiniz. Kritik dosyalar: db.sqlite3 (veritabanı), rsa_key* (şifreleme anahtarları), attachments/ (ekler). Anahtarları kaybetmek tüm şifrelerin erişilemez olmasına yol açar.
Organizasyon oluşturun ve koleksiyonlar ekleyin. Paylaşmak istediğiniz şifreyi düzenleyin ve 'Koleksiyonlar' bölümünden ilgili koleksiyonu seçin. Üyeleri organizasyona davet edin ve koleksiyon erişim izni verin. Üyeler kendi Bitwarden istemcilerinde paylaşılan şifreleri görebilir.
Coolify kurulumu, Docker ve Git entegrasyonu, uygulama deployment, veritabanı yönetimi, SSL sertifikaları, environment variables ve Heroku/Netlify alternatifi self-hosted PaaS.
Nextcloud kurulumu Docker ile, Apache/Nginx yapılandırması, veritabanı kurulumu, SSL sertifikası, dosya senkronizasyonu, uygulama mağazası ve performans optimizasyonu.
Portainer CE kurulumu, Docker ve Kubernetes yönetimi, stack deployment, volume/network yönetimi, kullanıcı yetkilendirme, webhook ve GitOps entegrasyonu.