Портативна збірка
Налаштування
Запусти HolyArrs як звичайну програму на Linux або Windows, без Docker. Docker лишається основним способом запуску.
Перш ніж почати
Посилання на Перш ніж почати- Python 3, Git і Docker на комп’ютері, де збираєш.
- Заповнений кеш модулів Go зі звичайної збірки проєкту та встановлені залежності фронтенду з
app/frontend/package-lock.json. - Зібраний вебзастосунок, закомічений у репозиторій. Збірка бере лише закомічений код; незакомічені правки не потрапляють.
Збірка й запуск
Посилання на Збірка й запуск-
З теки репозиторію збери архіви:
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Використай нову теку для результату поза репозиторієм. Ти маєш побачити по одному архіву на кожну ціль і файл
SHA256SUMS. -
Перевір архів за
SHA256SUMS. -
Розпакуй його в нову теку. Тримай програму й конфігурацію в окремих теках.
-
Запусти його зі своїм шляхом конфігурації:
Terminal window ./holyarrs -config /srv/holyarrs/config -addr :6262У Windows PowerShell:
Terminal window .\holyarrs.exe -config 'C:\HolyArrs\config' -addr ':6262' -
Відкрий
http://your-server:6262. Ти маєш побачити майстер першого запуску. Одразу створи обліковий запис власника; перший відвідувач стає власником.
Варіанти
Посилання на ВаріантиВід якого користувача запускати
Посилання на Від якого користувача запускатиЗапускай HolyArrs під окремим обліковим записом, з доступом на запис лише до конфігурації та твоїх медіа.
- Від root поза контейнером, без
PUIDіPGID, він зупиняється з повідомленням «started as root outside a container». - Із заданими
PUIDіPGIDвін передає теку конфігурації цьому користувачу й переходить на нього. - У Windows захисти теку конфігурації дозволом NTFS для цього облікового запису.
Перезапуски та ліміти
Посилання на Перезапуски та лімітиАрхів не встановлює жодної служби. Налаштуй автоперезапуск і жорсткі ліміти оперативної пам’яті у власному менеджері служб (systemd, NSSM, Task Scheduler). Перезапуск із застосунку та відновлення з бекапу обидва завершують програму й чекають, що її запустять знову.
Оновлення й повернення назад
Посилання на Оновлення й повернення назад- Перевір новий архів, перш ніж зупиняти застосунок.
- Зупини HolyArrs і скопіюй усю теку конфігурації разом із головним ключем. Або зроби бекап у застосунку й окремо збережи його ключ.
- Розпакуй нову програму в іншу теку. Лиши стару програму й стару копію конфігурації.
- Запусти нову програму на своїй конфігурації. Ти маєш мати змогу увійти, а
/healthмає показувати running.
Див. Бекапи.
Якщо не працює
Посилання на Якщо не працює| Ознака | Причина | Рішення |
|---|---|---|
| «started as root outside a container» | Запущено від root | Запусти від окремого користувача або задай PUID і PGID. |
| Застосунок завершується після відновлення | Відновлення готує дані й завершується з кодом 75 | Запусти його знову, щоб застосувати. Налаштуй свій менеджер служб на його перезапуск. |
| Виклики HTTPS не працюють на Linux | Немає системних сертифікатів CA | Встанови їх. |
| Збірка каже, що результат уже існує | Наявні теки результату відхиляються | Обери нову теку. |
Для досвідчених
Посилання на Для досвідченихПараметри збірки
| Параметр | Що робить | За замовчуванням |
|---|---|---|
--targets |
Підмножина цілей для збірки, через кому | linux-amd64, |
--low-resource |
Кожен контейнер збірки отримує 1 CPU, 2 GiB і 256 процесів; Go збирає по одному пакету. Пакування все одно виконується на хості, поза цими лімітами. | вимкнено |
Збірка виконується в закріпленому образі збирача Go з проєкту, без мережі, тож нічого не завантажує. Кеш модулів змонтовано лише для читання. Якщо будь-яка ціль не вдалася, тека результату не лишається. Коміт додається до номера версії та вбудовується в програму; застосунок і його бекапи повідомляють його.
Що міститься в архіві
Програма, ліцензія, повідомлення про сторонні компоненти, посібники, маніфест джерел і ідентифікація пакета. Окремий архів із джерелами містить вихідний код проєкту й залежності Go; тримай його поруч із виконуваними файлами.
SHA256SUMS підтверджує, що файли збігаються. Це не підпис. Той самий коміт, версія й вхідні дані дають ті самі архіви, тож ти можеш перезібрати для перевірки.
Нотатки про роботу
| Тема | Деталі |
|---|---|
| Шлях конфігурації | За замовчуванням /config. Завжди передавай -config, на локальному диску. |
| Ціль для оперативної пам’яті | 384 MiB без GOMEMLIMIT. Задай приблизно 80 відсотків пам’яті, яку виділяєш. Це ціль, а не жорсткий ліміт. |
| Режим малої пам’яті | У Linux вмикається сам приблизно за 2.5 GiB або менше; ціль падає до чверті пам’яті, між 192 і 384 MiB. Вирішує HOLYARRS_LOW_MEMORY=1 або 0. |
| Node | Для запуску не потрібен. |
| Hardlink | Тримай завантаження й теки бібліотеки на одній файловій системі. |
Пов’язане
Посилання на Пов’язанеHolyArrs безкоштовний. Якщо він заощадив тобі час, познач його зіркою на GitHub, підтримай проєкт або пригости мене кавою.