- Changed window size to mobile phone format (400x800) - Removed width condition for ActiveProxyFooter - now always visible - Added run-umbrix.sh launch script with icon copying - Stats cards now display on all screen sizes
139 lines
3.0 KiB
Markdown
139 lines
3.0 KiB
Markdown
# 🚀 Запуск Update Server в Docker
|
||
|
||
## Быстрый старт
|
||
|
||
```bash
|
||
# 1. Запустите контейнер
|
||
docker-compose up -d
|
||
|
||
# 2. Проверьте статус
|
||
docker-compose ps
|
||
|
||
# 3. Откройте веб-панель
|
||
# http://localhost:8000/admin/
|
||
```
|
||
|
||
## 📦 Загрузка APK файлов
|
||
|
||
### После сборки приложения:
|
||
|
||
```bash
|
||
# 1. Соберите APK
|
||
flutter build apk --release
|
||
|
||
# 2. Скопируйте в контейнер
|
||
docker cp build/app/outputs/flutter-apk/app-release.apk \
|
||
umbrix-update-server:/var/www/downloads/android/umbrix-1.7.1.apk
|
||
|
||
# 3. Проверьте что файл загружен
|
||
docker exec umbrix-update-server ls -lh /var/www/downloads/android/
|
||
|
||
# 4. Обновите latest.json через веб-панель
|
||
# http://localhost:8000/admin/
|
||
```
|
||
|
||
## 🔧 Управление контейнером
|
||
|
||
```bash
|
||
# Запустить
|
||
docker-compose up -d
|
||
|
||
# Остановить
|
||
docker-compose down
|
||
|
||
# Перезапустить
|
||
docker-compose restart
|
||
|
||
# Посмотреть логи
|
||
docker-compose logs -f
|
||
|
||
# Остановить с удалением volumes (осторожно!)
|
||
docker-compose down -v
|
||
```
|
||
|
||
## 📂 Структура volumes
|
||
|
||
```
|
||
umbrix-downloads/ # APK файлы (persistent)
|
||
├── android/
|
||
├── windows/
|
||
├── ios/
|
||
├── linux/
|
||
└── macos/
|
||
|
||
umbrix-logs/ # Логи сервера
|
||
├── access.log
|
||
├── admin.log
|
||
└── restore.log
|
||
```
|
||
|
||
## 🌐 URL для latest.json
|
||
|
||
После запуска в Docker, обновите константы:
|
||
|
||
```dart
|
||
// lib/core/model/constants.dart
|
||
static const customUpdateServerUrl = "https://api.umbrix.net/api.php";
|
||
```
|
||
|
||
И в latest.json используйте:
|
||
```json
|
||
{
|
||
"download_url": "https://api.umbrix.net/downloads/android/umbrix-1.7.1.apk"
|
||
}
|
||
```
|
||
|
||
## 🔒 Production настройки
|
||
|
||
Для продакшена добавьте Nginx:
|
||
|
||
```yaml
|
||
services:
|
||
nginx:
|
||
image: nginx:alpine
|
||
ports:
|
||
- "80:80"
|
||
- "443:443"
|
||
volumes:
|
||
- ./nginx.conf:/etc/nginx/nginx.conf
|
||
- ./ssl:/etc/nginx/ssl
|
||
- umbrix-downloads:/var/www/downloads:ro
|
||
depends_on:
|
||
- update-server
|
||
```
|
||
|
||
## 💾 Backup
|
||
|
||
```bash
|
||
# Создать backup
|
||
docker run --rm \
|
||
-v umbrix-downloads:/data \
|
||
-v $(pwd):/backup \
|
||
alpine tar czf /backup/downloads-backup-$(date +%Y%m%d).tar.gz /data
|
||
|
||
# Восстановить backup
|
||
docker run --rm \
|
||
-v umbrix-downloads:/data \
|
||
-v $(pwd):/backup \
|
||
alpine tar xzf /backup/downloads-backup-YYYYMMDD.tar.gz -C /
|
||
```
|
||
|
||
## 🐛 Отладка
|
||
|
||
```bash
|
||
# Войти в контейнер
|
||
docker exec -it umbrix-update-server sh
|
||
|
||
# Проверить PHP
|
||
docker exec umbrix-update-server php -v
|
||
|
||
# Проверить файлы
|
||
docker exec umbrix-update-server ls -la /var/www/downloads/android/
|
||
|
||
# Проверить latest.json
|
||
docker exec umbrix-update-server cat /var/www/latest.json
|
||
|
||
# Проверить логи
|
||
docker exec umbrix-update-server tail -f /var/www/logs/access.log
|
||
```
|