تخطَّ إلى المحتوى
اختر لغة:العربية

تثبيت Kept

اختر كيف تشغّل Kept، ثم اتبع خطواته. لكل طريقة دليل كامل في هذا القسم، ورابطه في آخر خطواتها.

Docker Compose

ما تحتاجه

‏Docker مع إضافة Compose، وطرفية. جُرِّب على ذاكرة ١ غيغابايت ونواة معالجة واحدة، يستخدم Kept وقاعدة بياناته منها نحو ٢٠٠–٤٠٠ ميغابايت (ما جُرِّب عليه).

  1. نزّل compose.yaml في مجلد خاص به: Kept وقاعدة بياناته في ملف واحد، بلا نسخة من المستودع وبلا كلمات مرور تصنعها بنفسك.

    نافذة طرفيّة
    mkdir kept && cd kept
    curl -fsSLO https://raw.githubusercontent.com/keptinventory/kept/v1.14.7/compose.yaml
  2. اكتب ملف .env. يسألك init عن العنوان الذي ستفتح Kept عليه، مثل http://kept.home.arpa:8080. استخدم اسمًا لا عنوان IP: الملصقات المطبوعة تحمله.

    نافذة طرفيّة
    docker compose run --rm init

    ستظهر لك

    Wrote .env.
    KEPT SETUP CODE: XXX-XXX
    Next: docker compose up -d, then open http://kept.home.arpa:8080 and enter the setup code.
  3. شغّله. تبدأ قاعدة البيانات، وتنشئ خدمتان تعملان مرة واحدة حسابات الدخول إليها وتطبّقان الترحيلات، ثم يبدأ Kept على المنفذ 8080.

    نافذة طرفيّة
    docker compose up -d

    ستظهر لك

    على العنوان، صفحة أدخل رمز الإعداد في Kept.

  4. أكمل الإعداد. أدخل الرمز الذي عرضه init وأنشئ الحساب الأول: يصبح مدير النسخة.

  5. احفظ المفاتيح. اطبع حقيبة الاسترداد واحفظها في مكان غير هذا الخادم، كمدير كلمات مرور. لا تستعيد النسخة الاحتياطية القيم السرية إلا بهذه المفاتيح.

    نافذة طرفيّة
    docker compose exec kept kept admin recovery-kit

    ستظهر لك

    نص يبدأ بـ KEPT RECOVERY KIT.

كل خطوة بالتفصيل، مع Caddy من أجل HTTPS وOllama للذكاء الاصطناعي المحلي: التثبيت باستخدام Docker Compose.

Kubernetes

ما تحتاجه

عنقود Kubernetes مثل k3s، وkubectl وhelm، وطرفية. يطلب المخطط ٣٨٤ ميبيبايت من الذاكرة لـ Kept (وبحد أقصى ١ جيبيبايت) و٢٥٦ ميبيبايت لـ Postgres المرفق به (وبحد أقصى ٥١٢ ميبيبايت).

  1. أنشئ الأسرار. لا يكتب المخطط أي سر أبدًا: تأخذ حسابات الدخول إلى قاعدة البيانات والمستخدم الأعلى لـ Postgres المرفق كلمات مرورها من أسرار تنشئها أنت أولًا.

    نافذة طرفيّة
    kubectl create namespace kept
    pw() { openssl rand -hex 32; }
    # The four database logins (always).
    kubectl -n kept create secret generic kept-db \
    --from-literal=KEPT_DB_OWNER_PASSWORD="$(pw)" --from-literal=KEPT_DB_APP_PASSWORD="$(pw)" \
    --from-literal=KEPT_DB_AUTH_PASSWORD="$(pw)" --from-literal=KEPT_DB_SYSTEM_PASSWORD="$(pw)"
    # The bundled Postgres's superuser (or, for external Postgres with roles.create, the server admin's password).
    kubectl -n kept create secret generic kept-postgres --from-literal=POSTGRES_PASSWORD="$(pw)"
  2. ثبّت المخطط، مع ضبط publicUrl على العنوان الذي سيفتحه الناس. لا تضف --wait إلى هذا التثبيت الأول: تعمل الترحيلات بعده.

    نافذة طرفيّة
    helm install kept oci://ghcr.io/keptinventory/charts/kept --version 1.14.7 -n kept \
    --set publicUrl=https://kept.example.org \
    --set roles.existingSecret=kept-db --set postgres.superuserSecret=kept-postgres

    ستظهر لك

    السطر الأول من الملاحظات التي يطبعها Helm:

    Kept 1.14.7 is installed as "kept" in namespace "kept".
  3. اعثر على رمز الإعداد. يطبعه Kept مرة واحدة، عند أول تشغيل.

    نافذة طرفيّة
    kubectl -n kept logs deploy/kept | grep 'KEPT SETUP CODE'

    ستظهر لك

    KEPT SETUP CODE: XXX-XXX

    افتح العنوان وأدخل الرمز وأنشئ الحساب الأول: يصبح مدير النسخة.

  4. احفظ المفاتيح. احفظ حقيبة الاسترداد خارج العنقود.

    نافذة طرفيّة
    kubectl -n kept exec deploy/kept -- kept admin recovery-kit > kept-recovery-kit.txt

    ستظهر لك

    الملف kept-recovery-kit.txt، يبدأ بـ KEPT RECOVERY KIT.

  5. تحقّق منه. يسأل helm test نسخة Kept العاملة عن /readyz و/version.

    نافذة طرفيّة
    helm test kept -n kept

على Windows، شغّل هذه الأوامر في WSL. القيم والأسرار الاختيارية وما يشغّله المخطط: تثبيت على كوبيرنيتس باستخدام هيلم.

من المصدر

ما تحتاجه

‏Git، وDocker مع إضافة Compose، وطرفية. يعمل Kept كما مع Docker Compose، على صورتك أنت.

  1. احصل على الشيفرة.

    نافذة طرفيّة
    git clone https://github.com/keptinventory/kept.git && cd kept
  2. ابنِ الصورة بالوسم kept:local.

    نافذة طرفيّة
    docker build -t kept:local .
  3. اكتب ملف .env. وجّه compose.yaml إلى صورتك، ثم شغّل init. يجد ملف .env ويسأل إن كان يحدّثه (أجب بـ Y)، ثم يسأل عن العنوان الذي ستفتح Kept عليه.

    نافذة طرفيّة
    echo KEPT_IMAGE=kept:local >> .env
    docker compose run --rm init

    ستظهر لك

    Updated .env.
    KEPT SETUP CODE: XXX-XXX
  4. شغّله وافتح العنوان.

    نافذة طرفيّة
    docker compose up -d

    ستظهر لك

    صفحة أدخل رمز الإعداد في Kept. أدخل الرمز الذي عرضه init وأنشئ الحساب الأول: يصبح مدير النسخة.

  5. احفظ المفاتيح. اطبع حقيبة الاسترداد واحفظها في مكان غير هذا الخادم.

    نافذة طرفيّة
    docker compose exec kept kept admin recovery-kit

    ستظهر لك

    نص يبدأ بـ KEPT RECOVERY KIT.

على Windows، شغّل هذه الأوامر في WSL. ملف compose.yaml نفسه الذي يأتي مع كل إصدار، مشروحًا بالتفصيل: التثبيت باستخدام Docker Compose.

Home Assistant

ما تحتاجه

‏Home Assistant OS مع المشرف 2026.10.4 أو أحدث: تحتاج التطبيقات إلى المشرف، فلا يصلح Home Assistant Container ولا Core. جهاز aarch64 أو amd64، مثل راسبيري باي ٤ أو ٥ على ٦٤ بت أو كمبيوتر مصغّر. ٤ غيغابايت من الذاكرة، ويكفي ٢ غيغابايت مع تطبيقات قليلة أخرى. لا حاجة إلى طرفية.

  1. أضف مستودع Kept. يفتح الزر Home Assistant لديك والمستودع مكتوب فيه. أو اذهب إلى الإعدادات → التطبيقات → تثبيت تطبيق → ⋮ → المستودعات وأضف https://github.com/keptinventory/kept.

    أضف Kept إلى Home Assistant
  2. ثبّت ثم ابدأ. ابحث عن Kept في متجر التطبيقات، ثم تثبيت، ثم ابدأ.

    ستظهر لك

    في علامة تبويب السجل للتطبيق، عنوان Kept الخاص ورمز الإعداد:

    Kept is at http://homeassistant.local:8080 (change it in Configuration: "Kept's address")
    KEPT SETUP CODE: XXX-XXX
  3. افتح واجهة الويب. يفتح Kept داخل Home Assistant، وفي الشريط الجانبي أيضًا.

    ستظهر لك

    لمسؤول Home Assistant، صفحة أنشئ الحساب الأول بلا رمز. أما غيره فيرى أدخل رمز الإعداد ويكتب الرمز من علامة تبويب السجل.

عنوان Kept وhttps والنسخ الاحتياطية: تثبيت كتطبيق لـ Home Assistant.

  • الحاوية تعيد التشغيل مرة بعد مرة. اقرأ سجلها: docker compose logs kept. يفحص Kept إعداداته قبل أن يبدأ، ويتوقف بسطر واحد يسمّي أول مشكلة، مثل kept: invalid environment: KEPT_PUBLIC_URL (شغّل docker compose run --rm init). وإن توقف docker compose up -d عند bootstrap، يقول docker compose logs bootstrap السبب. ومع ذاكرة أقل من ١ غيغابايت قد تنفد الذاكرة أثناء نسخة احتياطية فيعيد Docker تشغيل Kept (ما يحتاجه). المزيد
  • المنفذ مستخدَم. يأخذ Kept المنفذ 8080 على الجهاز. شغّل docker compose run --rm init مرة أخرى بعنوان http:// على منفذ متاح: يكتب العنوان والمنفذ (KEPT_HTTP_PORT) في .env. ثم docker compose up -d. وفي تطبيق Home Assistant، غيّر المنفذ من التكوين → الشبكة واضبط عنوان Kept ليطابقه. المزيد
  • رُفض الإذن. يعمل Kept بالمستخدم 10001 على نظام ملفات للقراءة فقط، فأي مجلد تربطه به، كمجلد النسخ الاحتياطية، يجب أن يملكه uid ‏10001. ويكتب init ملف .env في المجلد الذي تشغّله منه: شغّله في مجلد تملكه. المزيد
  • الأجهزة الأخرى لا تفتحه. لا يُفتح localhost إلا على هذا الجهاز. استخدم اسمًا تجده الأجهزة الأخرى، تضبطه في DNS الراوتر أو في ملف hosts على كل جهاز، وشغّل init مرة أخرى به. وإن قال Kept «‏Kept هذا مُعدّ للعنوان العنوان. افتحه هناك.»، فافتحه على ذلك العنوان تمامًا، أو أضف العنوان الآخر إلى KEPT_EXTRA_ADDRESSES (أكثر من عنوان واحد). المزيد
  • خطأ 502 من الوكيل العكسي. يتحدث Kept بـ HTTP العادي على المنفذ 8080: وجّه الوكيل إلى http:// لا https:// على ذلك المنفذ (خلف وكيل عكسي). ولا يبدأ Kept إلا بعد أن ينتهي migrate، وإن فشل يقول docker compose logs migrate السبب. المزيد

كل ما عدا ذلك: استكشاف الأخطاء وإصلاحها.

  • ‏Docker Compose: اضبط KEPT_IMAGE في .env على الإصدار الجديد، ثم:

    نافذة طرفيّة
    docker compose pull
    docker compose up -d

    الإصدار الذي يغيّر compose.yaml يقول ذلك في ملاحظاته: نزّل ملفه فوق ملفك.

  • من المصدر:

    نافذة طرفيّة
    git pull
    docker build -t kept:local .
    docker compose up -d
  • ‏Kubernetes: ينشر كل إصدار مخططًا بالإصدار نفسه، وتعمل ترحيلاته في Job قبل أن يبدأ الإصدار الجديد بالخدمة.

  • ‏Home Assistant: يعرض Home Assistant التحديث. شغّل احتفظ بنسخة احتياطية من الإصدار الأخير في مربع حوار التحديث.

مع وجهة نسخ احتياطي مضبوطة، يأخذ Kept لقطة قبل الترحيل. الترقيات والتراجع.