دليل التثبيت على Windows لإصدار digna 2026.11¶
الإصدار: 2026.11
آخر تحديث: 7 نوفمبر 2026
جدول المحتويات¶
- مقدمة
- متطلبات النظام
- إعداد ما قبل التثبيت
- إعداد خادم PostgreSQL
- تكوين خادم الويب
- التثبيت الأولي
- تكوين الواجهة الخلفية
- تكوين اللوحة
- تشغيل digna كخدمة Windows
- الترقية إلى إصدار جديد
المقدمة¶
حول digna¶
digna هي منصة شاملة تعتمد على الذكاء الاصطناعي مصممة لتحسين إدارة جودة البيانات عبر بيئات بيانات متنوعة مثل المستودعات (warehouses)، والبحيرات (lakes)، والـ lakehouses. تم بناؤها لتكون قابلة للتوسع والتكيف بدرجة عالية، وتتعامل digna مع تحديات البيانات الحديثة من خلال الأتمتة، والمراقبة في الوقت الحقيقي، وكشف الشذوذ.
يتكون digna من مكونين رئيسيين:
- digna: نواة التطبيق، وهي المسؤولة عن معالجة البيانات وتنفيذ فحوص الجودة. تجمع الواجهة الخلفية وواجهة سطر الأوامر في ملف تنفيذي واحد، وتحل محل البرنامجين المنفصلين
dignabackendوdignacliفي الإصدارات السابقة. - dignadashboard: واجهة ويب مستضافة على خادم ويب، توفر طريقة سهلة للتفاعل مع منصة digna وتصوير مؤشرات جودة البيانات.
ما الجديد في الإصدار 2026.11¶
يضيف هذا الإصدار digna Data Reconciliation، وdigna Agentic مع digna MCP Server، وdigna Engine الذي يستطيع إجراء تنميط البيانات (profiling) داخل digna والتحقق من التكامل المرجعي بين تقنيات قواعد بيانات مختلفة. راجع ملاحظات الإصدار للتفاصيل الكاملة.
بالنسبة إلى التثبيت، يجلب الإصدار آلية جديدة لترحيل المستودع، وقسمًا اختياريًا [duckdb] في config.toml من أجل digna Engine، وملف ترخيص جديدًا. يتناول قسم الترقية كلًّا منها.
تبحث عن macOS أو Linux؟¶
يغطي هذا الدليل Windows. للمنصات الأخرى، راجع دليل التثبيت على macOS أو دليل التثبيت على Linux.
متطلبات النظام¶
قبل البدء في التثبيت، تأكد من أن نظامك يستوفي الحد الأدنى من المتطلبات التالية:
| المتطلب | المواصفة |
|---|---|
| نظام التشغيل | Windows Server أو Windows 10/11 |
| الذاكرة (إعداد بسيط) | 16 جيجابايت RAM |
| مساحة القرص | 10 جيجابايت مساحة متاحة |
| قاعدة البيانات | PostgreSQL Server إصدار 12 أو أعلى |
| خادم الويب | IIS أو Apache Tomcat أو ما يعادلهما |
digna Engine
اتصالات قواعد البيانات التي تستخدم digna Engine موقعًا للتنميط يُجرى تنميطها على مضيف digna نفسه. خطّط لذاكرة ومساحة قرص إضافيتين من أجلها، انظر قسم [duckdb].
خيارات تثبيت قاعدة البيانات¶
إذا كان PostgreSQL مثبتًا بالفعل: يمكنك إضافة قاعدة بيانات جديدة لـ digna إلى خادم PostgreSQL الموجود لديك.
إذا كنت ستثبت PostgreSQL على نفس الجهاز الذي سيشغل digna:
المواصفات الموصى بها
- الذاكرة: 32 جيجابايت RAM (بدلاً من 16 جيجابايت)
- مساحة القرص: 50 جيجابايت مساحة متاحة (بدلاً من 10 جيجابايت)
هذه المواصفات الأعلى تستوعب تشغيل digna وقاعدة بيانات PostgreSQL معًا على نفس الجهاز.
إعداد ما قبل التثبيت¶
قبل تثبيت digna، تأكد من توفر متطلبين أساسيين:
- خادم PostgreSQL – لتخزين المقاييس المحسوبة وبيانات الأداء
- خادم ويب – لاستضافة لوحة digna
إذا لم تكن هذه المكونات معدة بالفعل، اتبع الأقسام أدناه لتثبيتها وتكوينها.
إعداد خادم PostgreSQL¶
إذا كان PostgreSQL مثبتًا بالفعل¶
إذا كان PostgreSQL مثبتًا ويعمل على جهازك المحلي أو إذا كنت تستخدم خادم PostgreSQL مُدار عن بُعد، يمكنك الانتقال إلى القسم التالي: تكوين خادم الويب.
تثبيت PostgreSQL¶
اتبع هذه الخطوات لتثبيت PostgreSQL على Windows:
الخطوة 1: تنزيل PostgreSQL¶
- زر صفحة تنزيلات PostgreSQL
- اختر Windows
- قم بتنزيل أحدث مثبت
الخطوة 2: تشغيل المثبت¶
- انقر نقرًا مزدوجًا على ملف المثبت الذي تم تنزيله
- اتبع المطالبات في معالج التثبيت
الخطوة 3: اختيار دليل التثبيت¶
حدد الدليل الذي سيتم تثبيت PostgreSQL فيه. الموقع الافتراضي عادةً ما يكون مناسبًا.
الخطوة 4: اختيار المكونات¶
لإعداد قياسي، احتفظ بخيارات المكونات الافتراضية محددة.
الخطوة 5: تعيين كلمة مرور مستخدم PostgreSQL الخارق¶
أدخل وأكد كلمة مرور لمستخدم PostgreSQL الخارق (postgres). احفظ هذه الكلمة بأمان — ستحتاجها لاحقًا.
الخطوة 6: تكوين رقم المنفذ¶
المنفذ الافتراضي لـ PostgreSQL هو 5432. يمكنك استخدام الافتراضي أو تحديد منفذ مختلف إذا لزم الأمر.
نصيحة
إذا كان المنفذ 5432 مستخدمًا بالفعل، اختر منفذًا بديلًا ودوِّنَه للتكوين لاحقًا.
الخطوة 7: اختيار اللغة المحلية (Locale)¶
اختر اللغة المحلية لقاعدة البيانات. الافتراضي عادةً ما يكون مناسبًا لمعظم التثبيتات.
الخطوة 8: إكمال التثبيت¶
انقر التالي عبر الخطوات المتبقية، ثم انقر إنهاء.
الخطوة 9: التحقق من التثبيت¶
افتح موجه الأوامر وتحقق من تثبيت PostgreSQL:
يجب أن ترى إصدار PostgreSQL إذا كان التثبيت ناجحًا.
تكوين خادم الويب¶
تتطلب digna خادم ويب لاستضافة اللوحة. اختر أحد الخيارات التالية:
تحتاج إلى تثبيت وتكوين واحد فقط من هذه الخوادم.
إعداد IIS¶
نظرة عامة¶
Internet Information Services (IIS) هو خادم الويب من Microsoft لاستضافة مواقع الويب والتطبيقات على الويب.
تمكين IIS¶
- افتح لوحة التحكم
- اضغط
Win + R -
اكتب
controlواضغط Enter -
انتقل إلى ميزات Windows
- انقر البرامج
-
اختر تشغيل ميزات Windows أو إيقافها
-
تمكين Internet Information Services
- مرر لأسفل وابحث عن Internet Information Services (IIS)
- ضع علامة في مربع الاختيار لتمكينه
-
انقر على + لتوسيع وتحقق من تحديد المكونات الفرعية التالية:
- Web Management Tools
- World Wide Web Services
-
انقر موافق لتطبيق التغييرات
-
التحقق من تثبيت IIS
- افتح المتصفح
- انتقل إلى
http://localhost - يجب أن ترى صفحة ترحيب IIS
مطلوب: مكون URL Rewrite¶
يتطلب IIS مكون URL Rewrite. قم بتنزيله وتثبيته من الصفحة الرسمية لمايكروسوفت.
مطلوب: نوع MIME لملفات Markdown¶
لضمان تقديم ملفات Markdown (.md) بشكل صحيح عبر IIS:
- افتح IIS Manager (اضغط
Win + R، اكتبinetmgr، اضغط Enter) - انتقل إلى Your Site > MIME Types
- انقر Add...
- اضبط:
- File name extension:
.md - MIME type:
text/markdown
مهم
بدون هذا الإعداد، قد لا يتم تقديم ملفات .md بشكل صحيح.
إعداد Apache Tomcat¶
نظرة عامة¶
Apache Tomcat هو حاوية Java Servlet وخادم ويب مفتوح المصدر.
التثبيت¶
- تنزيل Apache Tomcat
- زر تنزيلات Apache Tomcat
-
قم بتنزيل توزيع ZIP لنظام Windows
-
فك ضغط الأرشيف
- فك ضغط ملف ZIP إلى مجلد على نظامك
-
مثال:
C:\Program Files\Apache Tomcat -
التحقق من تشغيل Tomcat
- افتح المتصفح
- انتقل إلى
http://localhost:8080 - يجب أن ترى صفحة الترحيب لـ Apache Tomcat
نصيحة
عادةً ما يبدأ Apache Tomcat تلقائيًا بعد التثبيت. إذا لم يبدأ، انتقل إلى مجلد bin وقم بتشغيل startup.bat.
التثبيت الأولي¶
الخطوة 1: إعداد مستودع digna¶
يخزن مستودع digna جميع المقاييس المحسوبة بواسطة digna. يعمل كمركز قاعدة البيانات للبيانات التحليلية وأداء النظام.
إنشاء مخطط المستودع ومستخدم¶
افتح عميل PostgreSQL الخاص بك (pgAdmin أو psql أو ما شابه) ونفّذ أوامر SQL التالية:
CREATE SCHEMA <digna_repo_schema>;
CREATE USER <digna_repo_user> WITH PASSWORD '<digna_repo_password>';
GRANT ALL PRIVILEGES ON SCHEMA <digna_repo_schema> TO <digna_repo_user>;
استبدل العناصر النائبة التالية:
<digna_repo_schema>— اسم المخطط الذي تريده (مثال:dignarepo)<digna_repo_user>— اسم المستخدم الذي تريده (مثال:digna_user)<digna_repo_password>— كلمة مرور آمنة لهذا المستخدم
مثال:
CREATE SCHEMA dignarepo;
CREATE USER digna_user WITH PASSWORD 'YourSecurePassword123!';
GRANT ALL PRIVILEGES ON SCHEMA dignarepo TO digna_user;
أفضل الممارسات
استخدم كلمات مرور قوية ومعقدة لمستخدمي قواعد البيانات. تجنب بيانات الاعتماد سهلة التخمين.
الخطوة 2: فك حزمة تثبيت digna¶
- اعثر على ملف ZIP لتثبيت digna المقدم إليك
- فك ضغطه إلى موقع التثبيت الذي تختاره
- بعد الفك، يجب أن ترى العناصر التالية:
dashboard/— واجهة الويب للوحةdigna— الملف التنفيذي الرئيسي (الواجهة الخلفية + CLI مدمجان)
ملفا التهيئة والترخيص غير موجودين في الحزمة
لا يأتي config.toml ولا dashboard/dashboard_config.toml مع التثبيت — بل تنشئ كليهما بنفسك، في تهيئة الواجهة الخلفية و تهيئة اللوحة. ولا يأتي license.toml معه كذلك؛ إذ يقدّمه digna بشكل منفصل، كما هو موضّح في الخطوة 3.
الخطوة 3: تثبيت ملف الترخيص¶
مهم
ملف الترخيص غير مشمول في حزمة التثبيت وسيُقدّم لك بشكل منفصل من digna.
- اعثر على ملف
license.tomlالمقدم لك - انسخه إلى الدليل الجذري لتثبيت digna (حيث يوجد
config.tomlوالملف التنفيذيdigna)
لماذا هذا مهم: يحتوي ملف الترخيص على معلومات العميل وتاريخ انتهاء صلاحية الترخيص والتوقيع الرقمي. لا تقم بتعديل هذا الملف — أي تغييرات ستبطل صلاحيته.
هيكل الدليل بعد الإعداد:
digna_installation/
├── config.toml (configuration file)
├── license.toml (YOUR LICENSE FILE - copy here)
├── digna (main executable)
└── dashboard/ (web interface)
└── (dashboard files)
تكوين الواجهة الخلفية¶
الخطوة 1: إنشاء وتحرير ملف التكوين¶
ملف config_template.toml موجود في دليل تثبيت digna الخاص بك. كل ما عليك هو إعادة تسميته إلى config.toml.
الموقع: digna_installation/config.toml
افتح config.toml في محرر نصوص وغيّر كل قسم كما هو موضح أدناه.
قسم [app]¶
يضبط هذا القسم مشاركة الموارد عبر المصادر (CORS) بين لوحة التحكم والواجهة الخلفية (backend):
[app]
DIGNA_APP_CORS_ALLOW_ORIGINS = ["http://localhost:5173"]
DIGNA_APP_CORS_ALLOW_CREDENTIALS = true
| المعامل | القيمة | ملاحظات |
|---|---|---|
DIGNA_APP_CORS_ALLOW_ORIGINS | عناوين URL للوحة التحكم | عناوين URL التي تُقدَّم منها لوحة التحكم. تُرفض طلبات المتصفح الواردة من أي أصل آخر |
DIGNA_APP_CORS_ALLOW_CREDENTIALS | true | مطلوب، كي يرسل المتصفح ملف تعريف ارتباط الجلسة مع كل طلب |
القسم [app] اختياري
ابتداءً من الإصدار 2026.11، يمكن حذف المفتاحين، بل القسم [app] بأكمله. وهذا هو الإعداد الصحيح عندما يقدّم وكيل عكسي (reverse proxy) لوحة التحكم والواجهة الخلفية تحت أصل واحد: عندئذٍ لا يرسل المتصفح أي طلبات عبر المصادر، ولا يُسمح بأي منها افتراضيًا.
قسم [repo]¶
هذا القسم يضبط الاتصال بقاعدة بيانات PostgreSQL:
[repo]
DIGNA_REPO_HOST = "localhost"
DIGNA_REPO_PORT = 5432
DIGNA_REPO_DB = "postgres"
DIGNA_REPO_SCHEMA = "dignarepo"
DIGNA_REPO_USER = "digna_user"
DIGNA_REPO_PASSWORD = "YourSecurePassword123!"
DIGNA_REPO_SSLMODE = "prefer"
DIGNA_REPO_NUM_CONNS = 16
| المعامل | القيمة | ملاحظات |
|---|---|---|
DIGNA_REPO_HOST | localhost أو IP | اسم مضيف/عنوان IP خادم PostgreSQL |
DIGNA_REPO_PORT | 5432 (افتراضي) | منفذ PostgreSQL |
DIGNA_REPO_DB | postgres | اسم قاعدة البيانات |
DIGNA_REPO_SCHEMA | dignarepo | المخطط الذي تم إنشاؤه سابقًا |
DIGNA_REPO_USER | digna_user | المستخدم الذي تم إنشاؤه في إعداد PostgreSQL |
DIGNA_REPO_PASSWORD | كلمة مرورك | كلمة المرور التي تم تعيينها أثناء إنشاء المخطط |
DIGNA_REPO_SSLMODE | prefer (افتراضي) | اختياري. وضع SSL في PostgreSQL: disable أو allow أو prefer أو require أو verify-ca أو verify-full |
DIGNA_REPO_NUM_CONNS | 16 (افتراضي) | اختياري. عدد الاتصالات التي يُبقيها digna مفتوحة مع المستودع |
قسم [base]¶
يحتوي هذا القسم على إعدادات الأمان وملفات تعريف الارتباط والفحص:
[base]
DIGNA_FERNET_KEY = "DU4a0yJ-OqvbKCL4hNQn_CsknH-V1vWmHZqBUl-AY44="
DIGNA_COOKIE_DOMAIN = "localhost"
DIGNA_COOKIE_SECURE = false
DIGNA_COOKIE_HTTPONLY = true
DIGNA_TOKEN_EXPIRES_IN = 86400
DIGNA_MAX_WORKERS = 4
DIGNA_FRONTEND_BASEURL = "http://localhost/"
DIGNA_SOURCE_QUERY_TIMEOUT_SEC = 3600
DIGNA_SOURCE_LOGIN_TIMEOUT_SEC = 30
| المعامل | القيمة | ملاحظات |
|---|---|---|
DIGNA_FERNET_KEY | القيمة الموضحة أعلاه | مفتاح التشفير الذي استخدمته الإصدارات السابقة. يجب أن يكون موجودًا؛ احتفظ بالقيمة الموضحة |
DIGNA_COOKIE_DOMAIN | localhost | المضيف الذي يُوصَل عبره إلى لوحة التحكم. القيمة "" لا تعيّن أي نطاق، وهذا هو الصحيح خلف وكيل يقدّم لوحة التحكم والواجهة الخلفية تحت أصل واحد |
DIGNA_COOKIE_SECURE | false (HTTP) / true (HTTPS) | يجب أن تكون القيمة true كلما قُدِّم digna عبر HTTPS |
DIGNA_COOKIE_HTTPONLY | true | يُبقي ملف تعريف ارتباط الجلسة بعيدًا عن متناول السكربتات |
DIGNA_TOKEN_EXPIRES_IN | 86400 (24 ساعة) | مهلة الجلسة بالثواني |
DIGNA_MAX_WORKERS | عدد أنوية CPU - 1 | عدد عمليات الفحص التي يمكن أن تعمل في الوقت نفسه |
DIGNA_FRONTEND_BASEURL | عنوان URL للوحة التحكم | إلزامي. يُستخدم للروابط في رسائل الإشعارات، لذا يجب أن يكون عنوانًا يستطيع المستلمون فتحه |
DIGNA_SOURCE_QUERY_TIMEOUT_SEC | 3600 (افتراضي) | اختياري. عدد الثواني التي يمكن أن يعمل خلالها استعلام واحد على قاعدة بيانات مصدر قبل إيقافه؛ القيمة 0 تعطّل المهلة |
DIGNA_SOURCE_LOGIN_TIMEOUT_SEC | 30 (افتراضي) | اختياري. عدد ثواني انتظار الاتصال بقاعدة بيانات مصدر؛ القيمة 0 تعني الانتظار بلا حد |
قسم [encryption]¶
يحتوي هذا القسم على المفتاح المستخدم لتشفير القيم الحساسة المخزنة في المستودع. وهو إلزامي — يُبلغ config check عن القسم [encryption] بحالة FAILED إذا كان المفتاح مفقودًا.
| المعامل | القيمة | ملاحظات |
|---|---|---|
DIGNA_ENCRYPTION_KEY | مفتاح مُرمّز بصيغة Base64 | يشفّر القيم الحساسة المخزنة في مستودع digna |
احمِ الملف config.toml
هذا المفتاح قيمة ثابتة ومتطابقة في جميع تثبيتات digna، وهو ما يفك تشفير القيم الحساسة في مستودعك. اقصر الوصول إلى config.toml على الحساب الذي يشغّل digna، وأبقِ الملف خارج نظام إدارة الإصدارات والأقراص المشتركة، واستبعده من أي نسخة احتياطية تُحفظ بأمان أقل من المستودع نفسه.
قسم [logging]¶
هذا القسم يضبط سلوك السجلات:
| المعامل | القيمة | ملاحظات |
|---|---|---|
DIGNA_LOGGING_MODE | INFO أو DEBUG | INFO للإنتاج، DEBUG لاستكشاف الأخطاء. تُقبل أيضًا القيم TRACE وWARN وERROR |
DIGNA_LOGGING_DIR | logs (افتراضي) | اختياري. دليل ملفات السجل المتناوبة، نسبةً إلى دليل العمل |
DIGNA_LOGGING_MAX_FILES | 30 (افتراضي) | اختياري. عدد ملفات السجل المتناوبة التي يُحتفظ بها |
احتفظ بدليل السجلات عند التشغيل كخدمة
لا تملك خدمة Windows وحدة تحكم (console)، لذا فإن ملفات السجل هي السجل الوحيد لما تفعله الخدمة. لا تعيّن DIGNA_LOGGING_DIR إلى سلسلة فارغة، فذلك يوقف ملفات السجل.
قسم [duckdb] (اختياري)¶
جديد في الإصدار 2026.11. يحدد هذا القسم موارد digna Engine، الذي يُجري تنميط البيانات داخل digna لاتصالات قواعد البيانات التي يكون موقع التنميط فيها digna Engine، ويُشغّل فحوصات التكامل المرجعي بين مصادر بيانات موجودة على اتصالات قواعد بيانات مختلفة. انظر موقع التنميط.
هذا القسم اختياري. من دونه تُطبَّق القيم الافتراضية أدناه.
[duckdb]
DIGNA_DUCKDB_MEMORY_LIMIT_MB = 1024
DIGNA_DUCKDB_TEMP_DIRECTORY = "C:\\path\\to\\digna\\tmp"
| المعامل | القيمة | ملاحظات |
|---|---|---|
DIGNA_DUCKDB_MEMORY_LIMIT_MB | 1024 (افتراضي) | الذاكرة بالميغابايت التي يمكن أن يستخدمها تشغيل واحد لـ digna Engine. يمكن أن يكون ما يصل إلى DIGNA_MAX_WORKERS من عمليات التشغيل نشطًا في الوقت نفسه |
DIGNA_DUCKDB_TEMP_DIRECTORY | الافتراضي: الدليل المؤقت للحساب الذي يشغّل digna (%TEMP%) | دليل الملفات المؤقتة عندما لا تتسع الذاكرة للبيانات |
تحديد حجم digna Engine
خطّط لما يصل إلى DIGNA_MAX_WORKERS × DIGNA_DUCKDB_MEMORY_LIMIT_MB من الذاكرة على مضيف digna، فوق ما يستخدمه digna نفسه، ولمساحة قرص حرة كافية في الدليل المؤقت تتسع لأكبر تاريخ مفحوص من مصادر البيانات التي تستخدم digna Engine. وجّه DIGNA_DUCKDB_TEMP_DIRECTORY إلى قرص تتوفر فيه هذه المساحة ويستطيع الحساب الذي يشغّل digna الكتابة فيه:
لا تحتاج إلى هذا القسم إلا إذا كان اتصال واحد على الأقل بقاعدة بيانات يستخدم digna Engine، أو كان فحص تكامل مرجعي يقارن مصادر بيانات موجودة على اتصالات مختلفة.
الخطوة 2: تحقق من التهيئة¶
قبل تهيئة المستودع، تحقق من أن config.toml مكتمل ومبني بشكل صحيح. نفّذ في دليل تثبيت digna:
يُتحقق من كل قسم على حدة، بحيث لا يخفي خطأ واحد حالة الأقسام الأخرى:
Configuration validation report (source: config.toml):
- App config: OK
- Repository config: OK
- Base config: OK
- Logging config: OK
- Encryption config: OK
- OIDC config(s): OK
- Template overrides: OK
- Unknown keys: OK
Overall: OK
صحّح كل ما يُبلَّغ عنه بحالة FAILED، وأعد تنفيذ الأمر قبل المتابعة. يسرد WARNING تحت Unknown keys المفاتيح الموجودة في config.toml التي لا يقرؤها digna؛ ليس لها أي تأثير، لذا احذفها أو صحّح تهجئتها. القائمة الكاملة للخيارات موجودة في مرجع CLI.
الخطوة 3: تهيئة المستودع¶
- افتح موجه الأوامر
- انتقل إلى دليل تثبيت digna الخاص بك (حيث يوجد
config.tomlوالملف التنفيذيdigna) - شغّل اختبار الاتصال:
على مخطط جديد، يتصل الأمر ثم يُبلغ بأنه لا يوجد مستودع مثبّت بعد:
في هذه المرحلة هذه هي النتيجة المتوقعة: فهي تؤكد أن digna يصل إلى PostgreSQL وإلى المخطط. أما خطأ الاتصال أو المصادقة فيشير بدلًا من ذلك إلى القسم [repo] أو إلى إعداد PostgreSQL.
الخطوة 4: تثبيت مخطط المستودع¶
في نفس الدليل، نفّذ:
يُثبّت هذا الأمر الجداول اللازمة في مخطط المستودع وينتهي بالرسالة:
الأمر repo upgrade يثبّت ويرقّي
ابتداءً من الإصدار 2026.11، يثبّت repo upgrade مستودعًا جديدًا ويرقّي مستودعًا موجودًا. ولا يزال repo install يعمل كاسم آخر للأمر نفسه.
الخطوة 5: إنشاء مستخدم مسؤول¶
- افتح نافذة موجه أوامر جديدة
- انتقل إلى دليل تثبيت digna الخاص بك
- شغّل الأمر التالي لإنشاء مستخدم مسؤول:
مثال:
سيُنشئ هذا مستخدمًا بصلاحيات إدارية كاملة.
أفضل الممارسات
استخدم كلمة مرور قوية تشتمل على أحرف كبيرة وصغيرة وأرقام ورموز خاصة.
الخطوة 6: بدء خادم digna¶
في دليل تثبيت digna، ابدأ الخادم بـ:
المعلمات: - --address — اسم المضيف/عنوان IP للخادم (الافتراضي 127.0.0.1) - --port — منفذ الخادم (الافتراضي 8000)
عندما يعمل الخادم، يطبع العنوان الذي يستمع عليه:
الخادم يشغل الطرفية
يعمل serve في المقدمة ويستمر حتى توقفه بالضغط على Ctrl+C. اتركه يعمل بينما تكمل الإعداد؛ ولتشغيله تلقائيًا عند الإقلاع بدلًا من ذلك انظر تشغيل digna كخدمة Windows.
تكوين اللوحة¶
الخطوة 1: نشر اللوحة على خادم الويب¶
تقرأ لوحة digna تهيئتها الخاصة من dashboard/dashboard_config.toml. هذا الملف لا يأتي مع التثبيت — بل تنشئه في مجلد dashboard/ إلى جانب ملفات اللوحة.
محتوياته موضّحة في الدخول الموحّد (SSO)، وهناك أيضًا يلزم الملف: فهو يحمل خيارات تسجيل الدخول التي تعرضها اللوحة، وفي عمليات النشر متعددة النسخ، اتصال الواجهة الخلفية.
اختر خادم الويب الخاص بك واتبع خطوات النشر المناسبة.
النشر على IIS¶
- افتح IIS Manager
-
اضغط
Win + R، اكتبinetmgr، اضغط Enter -
إنشاء موقع ويب جديد
- في اللوحة اليسرى، انقر بزر الماوس الأيمن على Sites
-
اختر Add Website...
-
تكوين الموقع
- Site Name: أدخل اسمًا (مثال: "dignaDashboard")
- Physical Path: اضغط Browse وحدد مجلد
dashboard -
Binding: عيّن عنوان IP والمنفذ (المنفذ الافتراضي 80 لـ HTTP و443 لـ HTTPS)
-
بدء الموقع
- انقر OK لإنشاء الموقع
-
انقر بزر الماوس الأيمن على الموقع الجديد واختر Start
-
اختبار التثبيت
- افتح المتصفح
- انتقل إلى
http://localhost(أو عنوان URL الذي قمت بتكوينه) - يجب أن ترى صفحة تسجيل دخول لوحة digna
النشر على Apache Tomcat¶
- نسخ اللوحة إلى Tomcat
- انسخ مجلد
dashboardإلى مجلدwebappsفي Tomcat - أعد تسميته إذا لزم (مثال: إلى
digna) -
مثال:
C:\Program Files\Apache Tomcat\webapps\digna -
التحقق من النشر
- حدّث أو أعد تحميل صفحة إدارة Tomcat (http://localhost:8080)
-
يجب أن ترى "digna" (أو الاسم الذي اخترته) مدرجًا ضمن التطبيقات المنشورة
-
الوصول إلى اللوحة
- افتح المتصفح
- انتقل إلى
http://localhost:8080/digna - يجب أن ترى صفحة تسجيل دخول لوحة digna
تشغيل digna كخدمة Windows¶
لماذا نستخدم خدمة Windows؟¶
تشغيل الواجهة الخلفية لـ digna كخدمة Windows يضمن أنها: - تبدأ تلقائيًا عند إقلاع الخادم - تعمل في الخلفية دون الحاجة لفتح نافذة موجه الأوامر - تعيد التشغيل تلقائيًا إذا تعطّلت - يمكن إدارتها عبر أدوات خدمات Windows
أوامر windows¶
تُدار الخدمة بواسطة الملف التنفيذي digna نفسه، من خلال الأوامر الفرعية digna windows. لا توجد ملفات دُفعات (batch) لتشغيلها.
| الأمر | الغرض |
|---|---|
digna windows install | يسجل digna كخدمة Windows |
digna windows start | يشغّل الخدمة المسجلة |
digna windows stop | يوقف الخدمة الجارية |
digna windows uninstall | يلغي تسجيل الخدمة |
يتطلب صلاحيات المسؤول
يجب تنفيذ الأوامر الأربعة جميعها من موجه أوامر (Command Prompt) مفتوح بصلاحيات Administrator.
يقبل كل أمر الخيار --name لاستهداف خدمة مسجلة باسم غير الاسم الافتراضي. القائمة الكاملة للخيارات موجودة في مرجع CLI.
تثبيت الخدمة¶
- افتح موجه الأوامر كمسؤول
- انقر بزر الماوس الأيمن على Command Prompt
-
اختر "Run as Administrator"
-
انتقل إلى دليل تثبيت digna
-
سجّل الخدمة
حدّد العنوان والمنفذ ما لم تناسبك القيم الافتراضية
يسجّل install العنوان والمنفذ في تسجيل الخدمة، وترتبط الخدمة بما سُجّل بالضبط. القيم الافتراضية هي 127.0.0.1 و8000، وهي لا تقبل الاتصالات إلا من الجهاز نفسه. لا تستطيع لوحة على مضيف آخر الوصول إلى ذلك، لذا حدّد العنوان الذي يجب أن تستمع عليه الواجهة الخلفية:
لا تُقرأ هذه القيم من config.toml. لتغييرها لاحقًا، ألغِ تثبيت الخدمة ثم ثبّتها مجددًا بالقيم الجديدة.
تُسجَّل الخدمة مع التشغيل التلقائي، لذا ستبدأ مع Windows. لكنها لا تبدأ فورًا — راجع القسم التالي.
خيارات التثبيت¶
| الخيار | القيمة الافتراضية | الغرض |
|---|---|---|
--name | digna | الاسم الذي تُسجَّل الخدمة تحته |
--display-name | digna | الاسم المعروض في services.msc |
--description | digna data quality backend | الوصف المعروض في services.msc |
--address | 127.0.0.1 | العنوان الذي تربط الخدمة واجهتها البرمجية (API) به |
--port | 8000 | المنفذ الذي تربط الخدمة واجهتها البرمجية (API) به |
--working-dir | دليل الملف التنفيذي digna | الدليل الذي يحتوي على config.toml وlicense.toml، والذي تجعله الخدمة دليل عملها |
--start-type | auto | auto يبدأ مع Windows، وmanual يبدأ عند الطلب فقط، وdisabled يسجّل الخدمة لكنه يرفض تشغيلها |
--account | LocalSystem | الحساب الذي تعمل الخدمة به، مثل DOMAIN\user أو .\user |
--password | كلمة مرور --account |
التشغيل بحساب نطاق (domain)
لا يملك LocalSystem هوية على الشبكة، لذا ستفشل مصادقة Windows (Windows Authentication) مع SQL Server وأي وصول إلى مجلد مشترك على الشبكة. ثبّت الخدمة مع --account و--password عندما تحتاج الخدمة إلى الوصول إلى الموارد بصفة مستخدم محدد.
بدء وإيقاف الخدمة¶
لبدء الخدمة¶
لإيقاف الخدمة¶
نصيحة
أوقف دائمًا الخدمة قبل تحديث ملفات التطبيق.
نقل الخدمة إلى دليل جديد¶
إذا احتجت إلى نقل تثبيت digna:
-
أوقف الخدمة الحالية وألغِ تسجيلها
-
نقل ملفات التطبيق
-
انقل مجلد تثبيت digna بالكامل إلى الموقع الجديد
-
سجّل الخدمة مجددًا من الموقع الجديد
كرّر أي قيم --address أو --port أو --account استخدمتها في المرة الأولى — فالتسجيل السابق قد أُزيل.
- بدء الخدمة
إلغاء تثبيت الخدمة¶
-
أوقف الخدمة الجارية
-
ألغِ تسجيل الخدمة
تم الآن إلغاء تسجيل خادم digna كخدمة Windows.
الترقية إلى إصدار جديد¶
يرقّي هذا القسم تثبيتًا من الإصدار 2026.06 إلى الإصدار 2026.11. إذا كان تثبيتك أقدم، فاقرأ أولًا الترقية من إصدار سابق لـ 2026.06.
قبل الترقية¶
النسخ الاحتياطي لمستودع digna إلزامي
قبل ترقية digna، اعمل نسخة احتياطية من مستودعك (PostgreSQL) لحماية بياناتك من الضياع. النسخة الاحتياطية تضمن إمكانية الاسترداد إذا واجهت الترقية مشكلات غير متوقعة.
طلب ملف الترخيص للإصدار 2026.11
يحتاج الإصدار 2026.11 إلى ملف license.toml جديد. اطلبه من فريق digna قبل أن تبدأ، واجعله جاهزًا لـ الخطوة 7.
الترقية من إصدار سابق لـ 2026.06¶
جلب الإصدار 2026.06 ثلاثة تغييرات لا تزال سارية عندما ترقّي تثبيتًا أقدم مباشرةً إلى 2026.11:
- ODBC فقط. يصل digna إلى كل تقنية مصدر عبر ODBC. كل اتصال بقاعدة بيانات لا يستخدم ODBC بعد يجب تحويله إلى ODBC بعد الترقية؛ لا يوجد تحويل تلقائي. ثبّت برامج تشغيل ODBC على مضيف digna مسبقًا، انظر تثبيت برنامج تشغيل ODBC على مضيف digna، وجهّز خصائص كل اتصال من أدلة التقنيات. لم يعد موصل Databricks Legacy موجودًا؛ انقل تلك الاتصالات إلى موصل Databricks.
- ملف تنفيذي واحد. يحل الملف التنفيذي الواحد
digna، الذي يجمع الواجهة الخلفية وواجهة سطر الأوامر (CLI)، محلdignabackendوdignacli. - config.toml. القسم
[encryption]إلزامي، ولم يعدDIGNA_APP_HOSTوDIGNA_APP_PORTيُقرآن: يأخذ الخادم عنوانه ومنفذه منdigna serve. قارن ملفك بقسم تكوين الخلفية (Backend).
تشير الخطوات أدناه إلى المواضع التي يحتاج فيها التثبيت الأقدم إلى إجراء مختلف. ترقية المستودع في الخطوة 8 تنقل مستودع أي إصدار سابق مباشرةً إلى 2026.11.
عملية الترقية¶
الخطوة 1: إيقاف خدمة digna¶
افتح موجه الأوامر (Command Prompt) كمسؤول (Administrator) وأوقف الخدمة باستخدام الملف التنفيذي digna من تثبيتك الحالي:
تبقى الخدمة مسجّلة. يحل الملف التنفيذي الجديد محل القديم في الدليل نفسه، لذا يظل التسجيل يشير إلى الملف الصحيح.
إذا كان digna يعمل في المقدمة (foreground)، اضغط Ctrl+C في نافذة موجه الأوامر الخاصة به.
الترقية من إصدار سابق لـ 2026.06
كانت الإصدارات السابقة لـ 2026.06 تسجّل الخدمة بملفات دفعية (batch). أوقف الخدمة وألغِ تسجيلها بالملفات الدفعية من تثبيتك الحالي، قبل أن تعيد تسمية أي شيء في الخطوة 2:
دوّن الحساب الذي كانت الخدمة تعمل تحته، والعنوان والمنفذ اللذين كانت تخدم عليهما. ستسجّل الخدمة مجددًا في الخطوة 9.
الخطوة 2: انسخ التثبيت الحالي احتياطيًا¶
في دليل تثبيت digna، أعد تسمية الملف التنفيذي ومجلد لوحة التحكم في تثبيتك الحالي، حتى يمكن نشر الإصدار الجديد بجوارهما:
احتفظ بـ digna_old.exe حتى تتحقق من الترقية، وبـ dashboard_old حتى تستعيد منه ملفات التهيئة الخاصة بك (انظر الخطوة 4). بعد ذلك يمكنك حذفهما.
الترقية من إصدار سابق لـ 2026.06
أعد تسمية مجلدَي dignabackend وdignacli بدلًا من الملف التنفيذي: ren dignabackend dignabackend_old وren dignacli dignacli_old. لا يستخدم الإصدار 2026.11 أيًّا من هذين المجلدين، ولا مجلد bin الذي يضم الملفات الدفعية.
الخطوة 3: فك ونشر النسخة الجديدة¶
- فك ملف ZIP للنسخة الجديدة من digna
- انسخ الملف التنفيذي الجديد
dignaومجلدdashboardإلى دليل التثبيت
مهم
لا يُضمَّن config.toml ولا dashboard/dashboard_config.toml أبدًا في أرشيف ZIP الخاص بالتثبيت — فريق digna لا يرسل أيًّا من الملفين أبدًا. لذلك تبقى تهيئتك الحالية بمنأى عن الترقية، والنسخ الموجودة في المجلدات المعاد تسميتها *_old هي النسخ الوحيدة التي لديك.
الخطوة 4: استعادة ملفات التهيئة الخاصة بك¶
لا يحتاج الإصدار 2026.11 إلى أي تغيير في config.toml: الملف الذي يعمل مع الإصدار 2026.06 يظل يعمل. هناك تغييران اختياريان:
- أضف قسم
[duckdb]إذا كانت اتصالات قواعد البيانات ستستخدم digna Engine ولم تكن قيمه الافتراضية مناسبة لمضيفك. - احذف القسم
[app]إذا كان وكيل عكسي يقدّم لوحة التحكم والواجهة الخلفية تحت أصل واحد.
إعدادات لا يقرؤها digna
عرضت نسخ سابقة من هذا الدليل بعض الإعدادات التي لا يقرؤها digna. ليس لها أي تأثير، ويسردها config check تحت Unknown keys في الخطوة 6. احذفها أو صحّحها:
DIGNA_SCHEDULER_MAX_DELAYوDIGNA_CLEANUP_TIMEوdigna_COOKIE_PATHوdigna_COOKIE_SAME_SITEوdigna_APP_CORS_ALLOW_METHODSوdigna_APP_CORS_ALLOW_HEADERSوdigna_LOGGING_BACKUP_COUNTغير موجودة. احذفها.- أسماء الإعدادات حساسة لحالة الأحرف. يقرأ digna
DIGNA_REPO_HOST، لاdigna_REPO_HOST. اكتب كل اسم بأحرف كبيرة، كما في تكوين الخلفية (Backend).
الدخول الموحّد: أبقِ على [[oidc_clients]]
يقرأ digna مزوّدي الدخول الموحّد كقائمة من إدخالات [[oidc_clients]]، لكلٍّ منها DIGNA_OIDC_KEY الخاص به. إذا كنت قد حوّلت مزوّديك إلى أقسام [oidc_clients.<key>]، كما عرضت نسخة سابقة من هذا الدليل، فأعدها إلى الصيغة السابقة. يُبلغ config check عن OIDC config(s) بحالة FAILED ما دامت تلك الصيغة قائمة:
[[oidc_clients]]
DIGNA_OIDC_KEY = 'microsoft'
DIGNA_OIDC_CLIENT_ID = '<client_id>'
DIGNA_OIDC_CLIENT_SECRET = '<client_secret>'
DIGNA_OIDC_REDIRECT_URI = 'http://localhost:3000/oidc/callback'
DIGNA_OIDC_CONFIGURATION_URL = 'https://login.microsoftonline.com/<tenant_id>/v2.0/.well-known/openid-configuration'
كرّر الإدخال لكل مزوّد، وأبقِ كل DIGNA_OIDC_KEY مطابقًا لـ key في dashboard_config.toml. لا يتأثر بذلك سوى التثبيتات التي تستخدم الدخول الموحّد.
الخطوة 5: إعادة تحميل خادم الويب¶
لوحة التحكم عبارة عن مجموعة من الملفات الثابتة، لذا قد يظل خادم الويب — والمتصفح — يقدّمان الإصدار السابق. أعد تحميل أو أعد تشغيل خادم الويب الذي يستضيف مجلد dashboard، ثم أعد تحميل الصفحة بتحديث كامل (Ctrl+F5).
الخطوة 6: تحقق من التهيئة¶
تأكد من أن ملف config.toml مكتمل قبل أن تمسّ المستودع:
يجب أن يُبلِّغ كل قسم بحالة OK. صحّح كل ما يُبلَّغ عنه بحالة FAILED، واحذف المفاتيح المدرجة تحت Unknown keys، وأعد تنفيذ الأمر قبل المتابعة.
الخطوة 7: استبدال ملف الترخيص¶
ينتقل ملف الترخيص عادةً من إصدار إلى الإصدار الذي يليه. الإصدار 2026.11 استثناء: فهو يضيف وحدتين مرخّصتين، digna Data Reconciliation وdigna Agentic، والترخيص الصادر قبل 2026.11 لا يتضمنهما. انسخ ملف license.toml الذي قدّمه فريق digna للإصدار 2026.11 إلى دليل التثبيت، ليحل محل الملف القديم:
لا تحتفظ بالترخيص السابق
مع الترخيص السابق يبدأ digna، لكن digna Data Reconciliation وdigna MCP Server يبقيان معطّلين. وكل أمر يتحقق من الترخيص — user و inspection وrepo — يتوقف قبل أن يمسّ المستودع عند فشل التحقق. تحقّق من الترخيص الجديد قبل المتابعة:
الخطوة 8: ترقية مخطط المستودع¶
في دليل تثبيت digna، شغّل:
يدير الإصدار 2026.11 مخطط المستودع بعمليات ترحيل ذات أرقام إصدارات (versioned migrations). أول ترقية من إصدار سابق تنقل المخطط إلى آخر نسخة من الآلية السابقة، وتسجّل ذلك نقطةَ بداية له، ثم تطبّق عمليات ترحيل الإصدار 2026.11. وتنتهي بالرسالة:
تُحفظ جميع البيانات الحالية. لمعرفة حالة المستودع في أي وقت، شغّل digna repo check: فهو يسرد آخر عملية ترحيل مطبّقة وأي عمليات ترحيل معلّقة.
لا يبدأ digna على مستودع قديم
ابتداءً من الإصدار 2026.11، يرفض الخادم البدء ما دام المستودع يحتاج إلى ترقية، ويُبلغ بذلك، على سبيل المثال:
شغّل repo upgrade قبل أن تبدأ الخادم أو الخدمة.
الخطوة 9: إعادة تشغيل الخدمات¶
إذا كان digna يعمل كخدمة Windows، فشغّله مجددًا:
إذا رقّيت من إصدار سابق لـ 2026.06 وألغيت تسجيل الخدمة في الخطوة 1، فسجّلها مجددًا أولًا باستخدام الملف التنفيذي digna:
أعطِ --address و--port القيمتين اللتين كانت الخدمة القديمة تخدم عليهما، ما لم تكن تريد القيمتين الافتراضيتين 127.0.0.1 و8000. أضف --account و--password إذا كانت الخدمة القديمة تعمل تحت حساب نطاق (domain). انظر تشغيل digna كخدمة Windows للاطلاع على القائمة الكاملة للخيارات.
إذا كنت تشغّله يدويًا، أعد تشغيل الخادم:
إذا كنت تستخدم IIS أو Tomcat، أعد تشغيل خادم الويب المعني.
الخطوة 10: التحقق من الترقية¶
-
تأكد من إصدار الملف التنفيذي الجديد:
يجب أن يكون السطر الأول
Release: 2026.11. -
افتح لوحة digna وتحقق من تحميل الواجهة بشكل صحيح.
- تحقق من الملفات في الدليل
logsالخاص بالتثبيت بحثًا عن أخطاء. - اختبر اتصالات قواعد البيانات — انظر اختبار اتصال. بعد الترقية من إصدار سابق لـ 2026.06، حوّل أولًا إلى ODBC كل اتصال لم يكن يستخدمه بعد.
للبدء مع الوحدات الجديدة، انظر digna Data Reconciliation، وربط وكيل ذكاء اصطناعي من أجل digna MCP Server، وموقع التنميط من أجل digna Engine.