تثبيت Nextcloud: التخزين السحابي المستضاف ذاتياً والتعاون
تثبيت Nextcloud مع Docker، تهيئة Apache/Nginx، إعداد قاعدة البيانات، شهادة SSL، مزامنة الملفات، متجر التطبيقات وتحسين الأداء.
تثبيت Coolify، تكامل Docker وGit، نشر التطبيقات، إدارة قواعد البيانات، شهادات SSL، متغيرات البيئة وبديل PaaS المستضاف ذاتياً لـ Heroku/Netlify.
Coolify هو بديل مفتوح المصدر ومستضاف ذاتياً لمنصات السحابة مثل Heroku وNetlify وVercel. مع Coolify على خادمك الخاص، يمكنك إدارة تطبيقاتك وقواعد بياناتك وخدماتك بسهولة. تدعم هذه المنصة المبنية على Docker النشر التلقائي عند دفع الكود عبر تكامل Git.
Coolify هو حل PaaS حديث يتيح لك إدارة خوادم وتطبيقات متعددة من واجهة واحدة. الميزات الرئيسية:
يتم تثبيت Coolify بأمر curl واحد:
curl -fsSL https://cdn.coollabs.io/coolify/install.sh | bash
يقوم سكريبت التثبيت تلقائياً بـ:
بعد التثبيت، افتح المتصفح:
http://IP_الخادم:8000
عند الإعداد الأول، سيُطلب منك إنشاء حساب مسؤول. قم بتعيين كلمة مرور قوية.
عند تسجيل الدخول الأول، قم بتعيين البريد الإلكتروني وكلمة المرور. يتم تخزين هذه البيانات في قاعدة بيانات Coolify.
يضيف Coolify تلقائياً الخادم الذي تم تثبيته عليه (localhost). لإضافة خوادم إضافية:
# إنشاء مفتاح SSH لاتصال Coolify بالخوادم البعيدة
ssh-keygen -t ed25519 -C "coolify@myserver"
# إضافة المفتاح العام إلى الخادم البعيد
ssh-copy-id -i ~/.ssh/id_ed25519.pub user@remote-server
http://IP_الخادم:8000/auth/github# أنشئ Personal Access Token على GitLab
# النطاقات المطلوبة: api, read_user, read_repository
# مثال: Dockerfile لتطبيق Node.js
FROM node:20-alpine
WORKDIR /app
COPY package*.json ./
RUN npm ci --only=production
COPY . .
EXPOSE 3000
CMD ["node", "server.js"]
انتقل إلى تبويب Environment Variables في إعدادات التطبيق:
# أمثلة على متغيرات البيئة
NODE_ENV=production
DATABASE_URL=postgresql://user:pass@db:5432/myapp
REDIS_URL=redis://redis:6379
SECRET_KEY=مفتاحك-السري-هنا
PORT=3000
أضف المعلومات الحساسة (مفاتيح API، كلمات المرور) كمتغيرات بيئة. لا تكتبها أبداً في الكود المصدري.
app.example.comapp.example.com → IP_الخادم# التحقق من سجل DNS
nslookup app.example.com
dig app.example.com A
# تفاصيل اتصال PostgreSQL في Coolify
# URL داخلي (للتطبيقات على نفس الخادم):
postgresql://coolify:كلمة_المرور@postgres:5432/mydb
# URL خارجي (للوصول الخارجي):
postgresql://coolify:كلمة_المرور@IP_الخادم:المنفذ/mydb
# New Resource → Database → Redis
# الإصدار: 7.x
# الاتصال الداخلي:
redis://default:كلمة_المرور@redis:6379
يوفر Coolify وظيفة النسخ الاحتياطي التلقائي:
# نسخ احتياطي يدوي
coolify backup create --database postgres-id
# قائمة النسخ الاحتياطية
coolify backup list
يمكنك استيراد ملفات docker-compose.yml الموجودة مباشرة إلى Coolify:
# مثال docker-compose.yml
version: '3.8'
services:
app:
image: myapp:latest
environment:
- NODE_ENV=production
- DATABASE_URL=${DATABASE_URL}
ports:
- "3000:3000"
depends_on:
- db
db:
image: postgres:16
environment:
POSTGRES_DB: myapp
POSTGRES_USER: ${DB_USER}
POSTGRES_PASSWORD: ${DB_PASSWORD}
volumes:
- postgres_data:/var/lib/postgresql/data
volumes:
postgres_data:
قم بإعداد webhooks للنشر التلقائي بعد git push:
# إعدادات GitHub Webhook:
# Payload URL: https://coolify.example.com/webhooks/github
# Content type: application/json
# Secret: السر المنسوخ من Coolify
# Events: Push events
# تحديث Coolify إلى أحدث إصدار
curl -fsSL https://cdn.coollabs.io/coolify/install.sh | bash
# أو من واجهة الويب:
# Settings → Updates → Update Coolify
# عرض سجلات Coolify
docker logs coolify
# قائمة جميع حاويات Coolify
docker ps | grep coolify
# إعادة تشغيل Coolify
docker restart coolify
# سجلات البروكسي (Traefik)
docker logs coolify-proxy
يعمل Coolify بشكل ممتاز على خوادم REXE VPS. مع 4 جيجابايت RAM و2 vCPU، يمكنك إدارة المشاريع الصغيرة والمتوسطة بسهولة.
يكتشف سكريبت تثبيت Coolify تثبيتات Docker الموجودة. إذا كان لديك إصدار قديم من Docker، قم بإزالته أولاً بالأمر 'apt remove docker docker-engine docker.io containerd runc'، ثم أعد تشغيل تثبيت Coolify.
افتح المنفذ 8000 في جدار حماية الخادم: 'ufw allow 8000/tcp'. إذا كنت تستخدم مزود سحابي (AWS، GCP، Azure)، تحقق أيضاً من قواعد مجموعة الأمان/جدار الحماية. تحقق من أن حاوية Coolify تعمل: 'docker ps | grep coolify'.
تحقق من سجلات البناء في واجهة Coolify (Deployments → آخر نشر → Logs). إذا كنت تستخدم Nixpacks، تأكد من وجود package.json أو requirements.txt أو Dockerfile في الدليل الجذر للمشروع. تحقق من تعريف متغيرات البيئة بشكل صحيح.
تحقق من أن سجل DNS للنطاق يشير بشكل صحيح إلى IP الخادم (nslookup domain.com). تأكد من أن Let's Encrypt يمكنه الوصول إلى المنفذين 80 و443. تحقق من سجلات بروكسي Coolify (Traefik): 'docker logs coolify-proxy'. قد يستغرق انتشار DNS ما يصل إلى 24 ساعة.
أضف خوادم جديدة من قائمة Servers. تحتاج إلى تعريف مفتاح SSH لكل خادم. يتصل Coolify بالخوادم البعيدة عبر SSH وينفذ أوامر Docker. لا يوجد مشاركة للموارد بين الخوادم؛ كل خادم يعمل بشكل مستقل.
أضف تخزيناً متوافقاً مع S3 من قائمة Settings → Backup. يمكنك استخدام AWS S3 أو Cloudflare R2 أو MinIO. أدخل اسم الـ bucket وAccess Key وSecret Key وعنوان URL للـ endpoint. ثم قم بتهيئة جدولة النسخ الاحتياطي التلقائي من إعدادات قاعدة البيانات.
تثبيت Nextcloud مع Docker، تهيئة Apache/Nginx، إعداد قاعدة البيانات، شهادة SSL، مزامنة الملفات، متجر التطبيقات وتحسين الأداء.
تثبيت Portainer CE، إدارة Docker وKubernetes، نشر الـ stacks، إدارة الأحجام/الشبكات، تفويض المستخدمين، Webhooks وتكامل GitOps.
تثبيت Uptime Kuma مع Docker، مراقبة HTTP/TCP/DNS/ping، تكاملات الإشعارات (Telegram، Discord، البريد الإلكتروني)، إنشاء صفحة الحالة وتهيئة التنبيهات.