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>
57 lines
1.8 KiB
Markdown
57 lines
1.8 KiB
Markdown
# 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
|
||
```
|