Add server setup scripts (manual + cloud-init)

Two deployment options for recreating the kirgysia server:
- manual-setup/: bash script for manual server provisioning
- cloud-init/: cloud-init config + data upload script for automated VPS setup

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-03-21 16:07:57 +04:00
co-authored by Claude Opus 4.6
commit ba4b395a4a
6 changed files with 679 additions and 0 deletions
+56
View File
@@ -0,0 +1,56 @@
# Cloud-init настройка сервера
Автоматическая настройка VPS через cloud-init. Два шага: создать сервер с конфигом, затем загрузить данные.
## Шаг 1: Создание сервера
При создании VPS у хостера (Hetzner, Vultr, DigitalOcean и т.д.) вставьте содержимое `cloud-init.yml` в поле **User Data** / **Cloud-Init**.
- Выберите Ubuntu 22.04 LTS
- Вставьте содержимое `cloud-init.yml`
- Создайте сервер
Cloud-init автоматически:
- Обновит систему и поставит пакеты
- Создаст пользователя `eberkheev` с sudo и SSH-ключом
- Настроит SSH на порт 10001 (только ключи, root запрещён)
- Подготовит Docker и скачает образ 3x-ui
- Создаст docker-compose.yml и update.sh
Подождите 3-5 минут после создания сервера, пока cloud-init завершится.
## Шаг 2: Загрузка данных
После того как сервер создался, запустите с локальной машины:
```bash
bash upload-data.sh IP_СЕРВЕРА
```
Скрипт загрузит на сервер:
- базу данных `x-ui.db` из `../data/`
- SSL-сертификаты из `../data/`
И запустит контейнер 3x-ui.
## После установки
Подключение:
```bash
ssh -p 10001 eberkheev@IP_СЕРВЕРА
```
Панель 3x-ui:
```
https://IP_СЕРВЕРА:10002
```
Проверка контейнера:
```bash
docker ps
```
Обновление:
```bash
bash ~/update.sh
```