256 lines
7.6 KiB
Markdown
256 lines
7.6 KiB
Markdown
|
|
# 🚀 Инструкция по установке Gitea на сервер 85.208.139.84
|
|||
|
|
|
|||
|
|
## Шаг 1: Подключение к серверу
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# Подключитесь к серверу по SSH
|
|||
|
|
ssh root@85.208.139.84
|
|||
|
|
# или
|
|||
|
|
ssh ваш_пользователь@85.208.139.84
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## Шаг 2: Загрузка установочного скрипта
|
|||
|
|
|
|||
|
|
**Вариант A: Через scp (с локальной машины)**
|
|||
|
|
```bash
|
|||
|
|
cd ~/dorod/hiddify-umbrix-v1.7.0/update-server
|
|||
|
|
scp install-gitea.sh root@85.208.139.84:/root/
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
**Вариант B: Прямо на сервере (создать файл)**
|
|||
|
|
```bash
|
|||
|
|
# На сервере
|
|||
|
|
nano install-gitea.sh
|
|||
|
|
# Скопируйте содержимое файла install-gitea.sh
|
|||
|
|
# Сохраните: Ctrl+O, Enter, Ctrl+X
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
**Вариант C: Через curl (самый простой)**
|
|||
|
|
```bash
|
|||
|
|
# На сервере, скопируйте файл в интернет и скачайте:
|
|||
|
|
curl -O https://ваш-сервер/install-gitea.sh
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## Шаг 3: Запуск установки
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# Сделайте скрипт исполняемым
|
|||
|
|
chmod +x install-gitea.sh
|
|||
|
|
|
|||
|
|
# Запустите установку
|
|||
|
|
sudo ./install-gitea.sh
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
Установка займёт **3-5 минут**.
|
|||
|
|
|
|||
|
|
## Шаг 4: Первоначальная настройка Gitea
|
|||
|
|
|
|||
|
|
1. Откройте браузер: **http://85.208.139.84:3000**
|
|||
|
|
|
|||
|
|
2. При первом входе увидите страницу установки:
|
|||
|
|
|
|||
|
|
**Database Settings:**
|
|||
|
|
- Database Type: `PostgreSQL` ✓
|
|||
|
|
- Host: `db:5432` ✓
|
|||
|
|
- Username: `gitea` ✓
|
|||
|
|
- Password: `gitea_secure_pass_2026` ✓
|
|||
|
|
- Database Name: `gitea` ✓
|
|||
|
|
|
|||
|
|
**General Settings:**
|
|||
|
|
- Site Title: `Umbrix Updates`
|
|||
|
|
- Repository Root Path: `/data/git/repositories` ✓
|
|||
|
|
- Git LFS Root Path: `/data/git/lfs` ✓
|
|||
|
|
- Run As Username: `git` ✓
|
|||
|
|
|
|||
|
|
**Server and Third-Party Service Settings:**
|
|||
|
|
- SSH Server Domain: `85.208.139.84` ✓
|
|||
|
|
- SSH Server Port: `2222` ✓
|
|||
|
|
- Gitea HTTP Listen Port: `3000` ✓
|
|||
|
|
- Gitea Base URL: `http://85.208.139.84:3000` ✓
|
|||
|
|
|
|||
|
|
**Email Settings:** (можно пропустить)
|
|||
|
|
|
|||
|
|
**Administrator Account Settings:**
|
|||
|
|
- Administrator Username: `admin` (или ваш логин)
|
|||
|
|
- Password: (ваш надёжный пароль)
|
|||
|
|
- Email: `admin@umbrix.net`
|
|||
|
|
|
|||
|
|
3. Нажмите **"Install Gitea"**
|
|||
|
|
|
|||
|
|
4. Дождитесь завершения установки (10-20 секунд)
|
|||
|
|
|
|||
|
|
5. Войдите с созданными учётными данными
|
|||
|
|
|
|||
|
|
## Шаг 5: Создание репозитория Umbrix
|
|||
|
|
|
|||
|
|
1. После входа нажмите **"+"** → **"New Repository"**
|
|||
|
|
|
|||
|
|
2. Заполните:
|
|||
|
|
- Owner: `admin` (ваш пользователь)
|
|||
|
|
- Repository Name: `umbrix`
|
|||
|
|
- Description: `Umbrix VPN Application`
|
|||
|
|
- Visibility: ☑ **Public** (важно для updates!)
|
|||
|
|
- Initialize Repository: ☐ (пустой, заполним с локальной машины)
|
|||
|
|
|
|||
|
|
3. Нажмите **"Create Repository"**
|
|||
|
|
|
|||
|
|
## Шаг 6: Загрузка кода с локальной машины
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# На локальной машине
|
|||
|
|
cd ~/dorod/hiddify-umbrix-v1.7.0
|
|||
|
|
|
|||
|
|
# Добавьте remote для Gitea
|
|||
|
|
git remote add gitea http://85.208.139.84:3000/admin/umbrix.git
|
|||
|
|
|
|||
|
|
# Запушьте код
|
|||
|
|
git push -u gitea main
|
|||
|
|
# Введите: admin / ваш_пароль
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## Шаг 7: Создание первого релиза
|
|||
|
|
|
|||
|
|
### Через UI:
|
|||
|
|
|
|||
|
|
1. Откройте: http://85.208.139.84:3000/admin/umbrix
|
|||
|
|
2. Перейдите: **Releases** → **New Release**
|
|||
|
|
3. Заполните:
|
|||
|
|
- Tag version: `v1.7.3`
|
|||
|
|
- Release Title: `Umbrix v1.7.3`
|
|||
|
|
- Describe this release:
|
|||
|
|
```
|
|||
|
|
## 🚀 Что нового
|
|||
|
|
- Улучшена стабильность подключения
|
|||
|
|
- Исправлены ошибки
|
|||
|
|
```
|
|||
|
|
4. Прикрепите файлы (Drag & Drop):
|
|||
|
|
- `dist/umbrix-1.7.3-linux.deb`
|
|||
|
|
- `dist/umbrix-1.7.3-linux.rpm`
|
|||
|
|
- `dist/Umbrix-1.7.3-linux.AppImage`
|
|||
|
|
|
|||
|
|
5. Нажмите **"Publish Release"**
|
|||
|
|
|
|||
|
|
### Через API (автоматизация):
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# Получите Access Token
|
|||
|
|
# Gitea → Settings → Applications → Generate New Token
|
|||
|
|
# Permissions: read:repository, write:repository
|
|||
|
|
|
|||
|
|
TOKEN="ваш_токен"
|
|||
|
|
|
|||
|
|
# Создайте релиз
|
|||
|
|
curl -X POST "http://85.208.139.84:3000/api/v1/repos/admin/umbrix/releases" \
|
|||
|
|
-H "Authorization: token $TOKEN" \
|
|||
|
|
-H "Content-Type: application/json" \
|
|||
|
|
-d '{
|
|||
|
|
"tag_name": "v1.7.3",
|
|||
|
|
"name": "Umbrix v1.7.3",
|
|||
|
|
"body": "## Что нового\n- Улучшена стабильность",
|
|||
|
|
"draft": false,
|
|||
|
|
"prerelease": false
|
|||
|
|
}'
|
|||
|
|
|
|||
|
|
# Загрузите файлы
|
|||
|
|
RELEASE_ID=1 # ID из предыдущего ответа
|
|||
|
|
|
|||
|
|
curl -X POST "http://85.208.139.84:3000/api/v1/repos/admin/umbrix/releases/$RELEASE_ID/assets" \
|
|||
|
|
-H "Authorization: token $TOKEN" \
|
|||
|
|
-H "Content-Type: multipart/form-data" \
|
|||
|
|
-F "attachment=@dist/umbrix-1.7.3-linux.deb"
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## Шаг 8: Настройка Umbrix для использования Gitea
|
|||
|
|
|
|||
|
|
Отредактируйте `lib/core/model/constants.dart`:
|
|||
|
|
|
|||
|
|
```dart
|
|||
|
|
abstract class Constants {
|
|||
|
|
static const appName = "Umbrix";
|
|||
|
|
static const githubUrl = "http://85.208.139.84:3000/admin/umbrix";
|
|||
|
|
static const githubReleasesApiUrl = "http://85.208.139.84:3000/api/v1/repos/admin/umbrix/releases";
|
|||
|
|
static const githubLatestReleaseUrl = "http://85.208.139.84:3000/admin/umbrix/releases/latest";
|
|||
|
|
// ...
|
|||
|
|
static const useCustomUpdateServer = false; // Используем Gitea API
|
|||
|
|
}
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
Пересоберите:
|
|||
|
|
```bash
|
|||
|
|
flutter build linux --release
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## Шаг 9: Тест проверки обновлений
|
|||
|
|
|
|||
|
|
1. Запустите пересобранное приложение
|
|||
|
|
2. Откройте: **Настройки** → **О программе**
|
|||
|
|
3. Нажмите **"Проверка обновлений"**
|
|||
|
|
4. Должно показать: **"Доступно обновление до версии 1.7.3"**
|
|||
|
|
|
|||
|
|
## 📊 Управление сервером
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# На сервере
|
|||
|
|
cd /opt/gitea
|
|||
|
|
|
|||
|
|
# Просмотр логов
|
|||
|
|
docker-compose logs -f gitea
|
|||
|
|
|
|||
|
|
# Статус контейнеров
|
|||
|
|
docker-compose ps
|
|||
|
|
|
|||
|
|
# Перезапуск
|
|||
|
|
docker-compose restart
|
|||
|
|
|
|||
|
|
# Остановка
|
|||
|
|
docker-compose down
|
|||
|
|
|
|||
|
|
# Запуск
|
|||
|
|
docker-compose up -d
|
|||
|
|
|
|||
|
|
# Обновление Gitea
|
|||
|
|
docker-compose pull
|
|||
|
|
docker-compose up -d
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 🔧 Устранение проблем
|
|||
|
|
|
|||
|
|
### Gitea не запускается
|
|||
|
|
```bash
|
|||
|
|
docker-compose logs gitea
|
|||
|
|
docker-compose logs db
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### Порты заняты
|
|||
|
|
```bash
|
|||
|
|
# Проверьте что порты свободны
|
|||
|
|
netstat -tulpn | grep 3000
|
|||
|
|
netstat -tulpn | grep 2222
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### Забыли пароль админа
|
|||
|
|
```bash
|
|||
|
|
docker exec -it gitea gitea admin user change-password -u admin -p новый_пароль
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 🌐 Следующие шаги (опционально)
|
|||
|
|
|
|||
|
|
### 1. Настройка домена (вместо IP)
|
|||
|
|
Если есть домен `git.umbrix.net`:
|
|||
|
|
1. Добавьте A-запись: `git.umbrix.net → 85.208.139.84`
|
|||
|
|
2. Установите Nginx + Certbot для HTTPS
|
|||
|
|
3. Обновите `GITEA__server__DOMAIN` в docker-compose.yml
|
|||
|
|
|
|||
|
|
### 2. Автоматизация сборки
|
|||
|
|
Настройте Gitea Actions (аналог GitHub Actions) для автоматической сборки при push.
|
|||
|
|
|
|||
|
|
### 3. Зеркала
|
|||
|
|
Разверните такие же контейнеры на других IP для обхода блокировок.
|
|||
|
|
|
|||
|
|
## ✅ Готово!
|
|||
|
|
|
|||
|
|
Теперь у вас работает:
|
|||
|
|
- ✓ Gitea на http://85.208.139.84:3000
|
|||
|
|
- ✓ API обновлений: http://85.208.139.84:3000/api/v1/repos/admin/umbrix/releases
|
|||
|
|
- ✓ Umbrix проверяет обновления через Gitea
|