Документация
Пълен наръчник за разгръщане и управление на вашето фотографско портфолио Галария.
Започване
Галария е модерен уебсайт за фотографско портфолио, изграден с React 19, TypeScript, Express 5 и SQLite. Той предлага оптимизирана доставка на изображения, администраторски панел, проследяване на аналитика и отзивчив дизайн.
Бързи връзки
- Наръчник за инсталиране - Започнете с Docker или настройка за разработка
- На живо демонстрация - Вижте Galleria в действие
- GitHub хранилище - Изходен код и примери
Настройка на Google OAuth SSO
Активирайте Google OAuth Single Sign-On за сигурна, безпаролна автентикация на вашата администраторска панел на Galleria.
Стъпка 1: Създайте проект в Google Cloud
- Отидете на Google Cloud Console
- Създайте нов проект или изберете съществуващ
- Навигирайте до APIs & Services → Удостоверения
- Щракнете върху Създаване на удостоверения → OAuth клиентско ID
- Ако бъдете подканени, първо конфигурирайте екрана за съгласие на OAuth
Стъпка 2: Конфигурирайте OAuth клиент
- Изберете Уеб приложение като тип на приложението
- Добавете домейна си в Разрешени JavaScript произходи:
https://yourdomain.com - Добавете URL адреса за обратна връзка в Разрешени пренасочващи URI:
https://yourdomain.com/api/auth/google/callback - Щракнете върху Създаване и запазете удостоверенията си
Стъпка 3: Конфигурирайте в настройките на Galleria
- Влезте в администраторския панел на Galleria
- Навигирайте до Настройки → Google OAuth
- Въведете вашия Google Client ID
- Въведете вашия Google Client Secret
- Кликнете Запази, за да активирате Google OAuth SSO
Автоматично преобразуване на потребители: Съществуващите потребители с съвпадащи имейл адреси ще бъдат автоматично преобразувани в Google OAuth удостоверяване. Те могат да влязат с Google веднага след конфигурирането на OAuth.
Съвет за сигурност: Добавяйте само доверени имейл адреси като администратори. Можете да управлявате достъпа на потребителите от администраторския панел след първоначалната настройка.
Настройка на OpenObserve Analytics
OpenObserve предоставя мощна аналитика на логовете и мониторинг в реално време за вашия уебсайт Galleria с възможности за гео-обогатяване.
Стъпка 1: Инсталирайте OpenObserve с Docker
Стартирайте OpenObserve с помощта на Docker Compose:
Стъпка 2: Създайте служебен акаунт
- Достъп до OpenObserve на http://localhost:5080
- Влезте с вашите администраторски данни
- Навигирайте до Настройки → Служебни акаунти
- Кликнете Създайте служебен акаунт
- Дайте му име (напр. "galleria-analytics") и задайте подходящи разрешения
- Копирайте генерирания API токен за по-късна употреба
Стъпка 7: Конфигуриране на Galleria
- Влезте в администраторския панел на Galleria
- Отидете на Настройки → Анализи
- Въведете вашия OpenObserve URL (напр. http://localhost:5080)
- Въведете вашия Идентификатор на организацията
- Въведете името на вашия поток (уебсайт)
- Въведете вашето потребителско име (от Стъпка 2)
- Въведете вашата парола (токен на служебния акаунт от Стъпка 2)
- Натиснете Запази, за да активирате аналитиката на OpenObserve
Успех! Вашите анализи сега ще включват геообогатени данни с град, регион, страна, ISP и координати за всички посетители.
Хардуерно видео кодиране
Galleria поддържа хардуерно ускорено видео кодиране за 5-10 пъти по-бързо обработване на видео с помощта на вашия GPU.
Поддържан хардуер
NVIDIA GPUs (NVENC)
Поддръжка на Docker и нативна поддръжка
Intel Quick Sync (QSV)
Само нативна поддръжка
AMD графични процесори (AMF)
Само местна поддръжка
Apple VideoToolbox
Само за macOS
Активирайте хардуерното кодиране
- Отидете на Административен панел → Настройки → Качество на видеото
- Превключете "Хардуерно транскодиране" на включено
- Обработката на видео сега ще използва ускорение с GPU, когато е налично
Производствено разгръщане
Използване на PM2
За производствено разгръщане без Docker:
npm run build
npm install -g pm2
pm2 start ecosystem.config.cjs
pm2 save
pm2 startupАвтоматизирано разгръщане: Изпратете до главния клон и GitHub Actions автоматично разгръща вашите промени.
Помогнете за подобряване на тази документация
Намерихте грешка или искате да допринесете за документацията? Приветстваме приноси!
Допринесете в GitHub