דלגו לתוכן

גרסה ניידת

הגדרה

הרץ את HolyArrs כתוכנה רגילה על Linux או Windows, בלי Docker. Docker נשאר הדרך הראשית להריץ אותו.

  • Python 3, Git ו-Docker על מחשב הבנייה.
  • מטמון מודולים של Go שמולא מבנייה רגילה של הפרויקט, ותלויות frontend שהותקנו מ-app/frontend/package-lock.json.
  • אפליקציית ה-web הבנויה צריכה להיות committed. הבנייה משתמשת רק במקור שנעשה לו commit; שינויים שלא נעשה להם commit לא נכללים.
  1. מתוך ה-checkout, בנה את הארכיונים:

    Terminal window
    python deploy/release/package.py --ref HEAD --version 1.0.0 --output /srv/holyarrs-archives/1.0.0 --web-node-modules app/frontend/node_modules --module-cache /home/you/go/pkg/mod

    השתמש בתיקיית פלט חדשה מחוץ ל-checkout. אתה אמור לראות ארכיון אחד לכל יעד וקובץ SHA256SUMS.

  2. בדוק את הארכיון מול SHA256SUMS.

  3. חלץ אותו לתיקייה חדשה. שמור את התוכנה ואת ההגדרות בתיקיות נפרדות.

  4. הפעל אותו עם נתיב ההגדרות שלך:

    Terminal window
    ./holyarrs -config /srv/holyarrs/config -addr :6262

    ב-Windows PowerShell:

    Terminal window
    .\holyarrs.exe -config 'C:\HolyArrs\config' -addr ':6262'
  5. פתח http://your-server:6262. אתה אמור לראות את אשף ההפעלה הראשונה. צור את חשבון הבעלים מיד; המבקר הראשון הופך לבעלים.

איזה משתמש מריץ אותו

קישור אל איזה משתמש מריץ אותו

הרץ את HolyArrs תחת חשבון משלו, עם הרשאת כתיבה רק להגדרות ולמדיה שלך.

  • כ-root מחוץ לקונטיינר, בלי PUID ו-PGID, הוא נעצר עם “started as root outside a container”.
  • עם PUID ו-PGID מוגדרים, הוא מעביר את תיקיית ההגדרות למשתמש הזה ועובר אליו.
  • ב-Windows, הגן על תיקיית ההגדרות עם הרשאת NTFS לחשבון הזה.

הפעלות מחדש ומגבלות

קישור אל הפעלות מחדש ומגבלות

הארכיון לא מתקין שירות. הגדר הפעלה מחדש אוטומטית ומגבלות זיכרון קשיחות במנהל השירותים שלך (systemd, NSSM, Task Scheduler). הפעלה מחדש מהאפליקציה ושחזור גיבוי שניהם יוצאים ומצפים שיפעילו אותו שוב.

לעדכן ולחזור אחורה

קישור אל לעדכן ולחזור אחורה
  1. בדוק את הארכיון החדש לפני שאתה עוצר את האפליקציה.
  2. עצור את HolyArrs והעתק את כל תיקיית ההגדרות, כולל המפתח הראשי. או צור גיבוי מתוך האפליקציה ושמור את המפתח שלו בנפרד.
  3. חלץ את התוכנה החדשה לתיקייה אחרת. שמור את התוכנה הישנה ואת עותק ההגדרות הישן.
  4. הפעל את התוכנה החדשה על ההגדרות שלך. אתה אמור להצליח להתחבר, ו-/health אמור להראות running.

ראה גיבויים.

תסמין סיבה פתרון
“started as root outside a container” הופעל כ-root הרץ אותו כמשתמש משלו, או הגדר PUID ו-PGID.
האפליקציה יוצאת אחרי שחזור שחזור מכין את הנתונים ויוצא עם קוד 75 הפעל אותה שוב כדי להחיל אותו. הגדר את מנהל השירותים שלך להפעיל אותה מחדש.
קריאות HTTPS נכשלות ב-Linux אין תעודות CA של המערכת התקן אותן.
הבנייה אומרת שהפלט קיים תיקיות פלט קיימות נדחות בחר תיקייה חדשה.
אפשרויות בנייה
אפשרות מה היא עושה ברירת מחדל
--targets תת-קבוצה מופרדת בפסיקים לבנייה linux-amd64,linux-arm64,linux-armv7,windows-amd64
--low-resource כל קונטיינר בנייה מקבל 1 CPU, 2 GiB ו-256 תהליכים; Go בונה חבילה אחת בכל פעם. האריזה עדיין רצה על ה-host, מחוץ למגבלות האלה. כבוי

הבנייה רצה ב-image הבנייה הנעוץ של Go של הפרויקט כשהרשת כבויה, ולכן היא לא מורידה כלום. מטמון המודולים מעוגן לקריאה בלבד. אם יעד כלשהו נכשל, לא נשארת תיקיית פלט. ה-commit מתווסף למספר הגרסה ומוטמע בתוכנה; האפליקציה והגיבויים שלה מדווחים אותו.

מה יש בארכיון

התוכנה, הרישיון, הודעות צד שלישי, מדריכים, מניפסט מקור וזהות החבילה. ארכיון מקור נפרד מחזיק את מקור הפרויקט ותלויות ה-Go; שמור אותו ליד הקבצים הבינאריים.

SHA256SUMS מוכיח שהקבצים תואמים. זו לא חתימה. אותו commit, אותה גרסה ואותם נתוני קלט נותנים אותם ארכיונים, כך שאפשר לבנות מחדש כדי לבדוק.

הערות הרצה
נושא פרט
נתיב הגדרות ברירת מחדל /config. תמיד העבר -config, על דיסק מקומי.
יעד זיכרון 384 MiB בלי GOMEMLIMIT. הגדר אותו לכ-80 אחוז מהזיכרון שאתה נותן. יעד, לא מגבלה קשיחה.
מצב זיכרון נמוך ב-Linux, נדלק מעצמו בכ-2.5 GiB או פחות; היעד יורד לרבע מהזיכרון, בין 192 ל-384 MiB. HOLYARRS_LOW_MEMORY=1 או 0 מכריע.
Node לא נדרש להרצה.
Hardlinks שמור את ההורדות ותיקיות הספרייה על מערכת קבצים אחת.

HolyArrs חינמי. אם זה חסך לך זמן, תן לו כוכב ב-GitHub, תמוך בפרויקט או קנה לי קפה.