أوامر النشر
تُولّد أوامر النشر إعدادات بنية تحتية جاهزة للإنتاج وتُأتمت عملية الإصدار. يدعم FORGE نشر Kubernetes و Docker Compose والنشر المباشر عبر SSH.
forge deploy:k8s
توليد بيانات Kubernetes لنشر تطبيق FORGE على كلستر.
الاستخدام
bash
forge deploy:k8s [OPTIONS]الخيارات
| الخيار | النوع | الافتراضي | الوصف |
|---|---|---|---|
--env | string | production | البيئة الهدف: production، staging، أو development. |
--domain | string | — | النطاق الرئيسي لإعدادات Ingress. |
--ssl | flag | false | تفعيل TLS مع تعليقات cert-manager. |
--email | string | — | البريد الإلكتروني لإصدار شهادة Let's Encrypt. |
--replicas | number | 2 | عدد نسخ pod لكل خدمة. |
--namespace | string | اسم المشروع | مساحة أسماء Kubernetes. |
--registry | string | — | عنوان سجل الحاويات (مثل ghcr.io/org). |
--output | string | deploy/k8s/ | مجلد المخرجات للبيانات المُولّدة. |
بنية الملفات المُولّدة
deploy/k8s/
namespace.yaml
configmap.yaml
secrets.yaml
api/
deployment.yaml
service.yaml
hpa.yaml
web/
deployment.yaml
service.yaml
hpa.yaml
admin/
deployment.yaml
service.yaml
hpa.yaml
ingress.yaml
cert-manager/
cluster-issuer.yaml
certificate.yaml
postgres/
statefulset.yaml
service.yaml
pvc.yaml
redis/
deployment.yaml
service.yamlأمثلة
نشر إنتاج مع SSL:
bash
forge deploy:k8s \
--env production \
--domain myapp.com \
--ssl \
--email admin@myapp.com \
--replicas 3 \
--registry ghcr.io/myorgStaging بموارد بسيطة:
bash
forge deploy:k8s \
--env staging \
--domain staging.myapp.com \
--replicas 1نصيحة
البيانات المُولّدة تستخدم بنية متوافقة مع Kustomize. يمكنك وضع طبقات تجاوزات خاصة بالبيئة فوق الإعدادات الأساسية.
forge deploy:compose
توليد ملف Docker Compose للإنتاج مع وكيل Nginx عكسي وSSL اختياري.
الاستخدام
bash
forge deploy:compose [OPTIONS]الخيارات
| الخيار | النوع | الافتراضي | الوصف |
|---|---|---|---|
--env | string | production | البيئة الهدف. |
--ssl | flag | false | تفعيل SSL مع Certbot و Nginx. |
--email | string | — | البريد الإلكتروني لإصدار شهادة Let's Encrypt. |
بنية الملفات المُولّدة
deploy/compose/
docker-compose.production.yml
nginx/
nginx.conf
conf.d/
api.conf
web.conf
admin.conf
certbot/
cli.ini
.env.productionمثال
bash
forge deploy:compose --ssl --email admin@myapp.comforge deploy:scripts
توليد سكربتات نشر مساعدة لخطوط أنابيب CI/CD والنشر اليدوي.
الاستخدام
bash
forge deploy:scripts [OPTIONS]الخيارات
| الخيار | النوع | الافتراضي | الوصف |
|---|---|---|---|
--env | string | production | البيئة الهدف. |
الملفات المُولّدة
deploy/scripts/
deploy.sh # سكربت النشر الكامل
rollback.sh # التراجع للإصدار السابق
health-check.sh # التحقق من صحة الخدمات
backup-db.sh # نسخ احتياطي لقاعدة البيانات قبل النشر
migrate.sh # تشغيل الترحيلات فقطمثال
bash
forge deploy:scripts --env productionforge deploy:ssl
توليد إعدادات شهادة SSL لنشر الإنتاج.
الاستخدام
bash
forge deploy:ssl [OPTIONS]الخيارات
| الخيار | النوع | الافتراضي | الوصف |
|---|---|---|---|
--method | string | certbot | طريقة توفير SSL: certbot. |
--domain | string | — | اسم النطاق للشهادة. |
--email | string | — | البريد الإلكتروني لتسجيل Let's Encrypt. |
--output | string | deploy/ssl/ | مجلد المخرجات. |
مثال
bash
forge deploy:ssl \
--domain myapp.com \
--email admin@myapp.comنصيحة
لـ SSL التطوير المحلي، استخدم forge ssl:generate بدلاً من ذلك. هذا الأمر مُخصص لتوفير شهادات الإنتاج. راجع أوامر البنية التحتية.
انظر أيضاً
- أوامر البنية التحتية — إدارة Docker و SSL و hosts المحلية
- أوامر قاعدة البيانات — استراتيجيات الترحيل للنشر
- أوامر التحقق — التحقق قبل النشر