Администраторам

# Запустите свой сервер Welley

Наш инструмент командной строки устанавливает всё, что нужно Welley, на одну машину с Linux. Подойдёт облачный сервер, а также ваше собственное оборудование.

[Читать: Быстрый старт: минимальное развертывание Welley](https://welley.com/ru/administrators/docs/quick-start/) [Читать: Welley CLI](https://welley.com/ru/administrators/docs/cli/) [Установка Docker Engine](https://docs.docker.com/engine/install/)

В будущем мы планируем выпустить Welley с открытым исходным кодом. Дата выпуска и лицензия пока не объявлены.

## Подготовьте хост, DNS и почту

Это начальные требования из краткого руководства. Сколько мощности вам нужно, зависит от ваших пользователей и нагрузки.

### Хост с Linux

-   Ubuntu 24.04 LTS или похожий актуальный дистрибутив.
-   Начните с 2 vCPU, 4 ГБ ОЗУ и 60 ГБ диска.
-   Используйте постоянный публичный адрес IPv4 и пользователя без прав root, у которого есть sudo.

### Сеть

-   Разрешите входящие TCP 80 и 443 из интернета. Разрешите TCP 22 из вашей сети.
-   Держите порт 80 свободным для проверки при получении сертификата и для его еженедельного продления.

### DNS сайта

-   Направьте ваш домен и storage.<domain> на IP-адрес хоста.
-   Создайте обе записи до установки. CLI проверяет их и останавливается, если они не указывают на хост.

### SMTP и почта администратора

-   Приготовьте хост SMTP, пользователя, пароль и адрес отправителя. По умолчанию используется STARTTLS на порту 587.
-   Вам также понадобится почта администратора для первого входа и восстановления пароля.

### DNS для почты

-   Настройте SPF, DMARC и DKIM, который создаёт ваш провайдер, для домена адреса отправителя.
-   Используйте точное значение SPF от вашего провайдера. Объедините его с существующей записью SPF, а не добавляйте вторую.
-   CLI предупреждает, если SPF или DMARC нет. Селектор DKIM вашего провайдера он проверить не может.

## Установите Docker Engine и Compose

Следуйте официальным инструкциям Docker для вашего дистрибутива Linux. Затем дайте пользователю развёртывания доступ к Docker.

[Установка Docker Engine](https://docs.docker.com/engine/install/)

### Добавьте пользователя в группу Docker

Замените <user> на вашего пользователя развёртывания без прав root. После выполнения этой команды выйдите из системы и войдите снова.

```
sudo usermod -aG docker <user>
```

### Проверьте Docker и Compose

Обе команды должны работать для этого пользователя.

```
docker ps
docker compose version
```

## Скачайте CLI

Выберите бинарный файл для машины, на которой вы будете запускать CLI. Сам хост развёртывания должен работать под Linux.

### Linux, x86-64

```
curl -fL "https://appstore.allroads.social/v1/social.wellesley.wlycli/latest?channel=stable&platform=linux/amd64" -o wlycli
chmod +x wlycli
./wlycli -v
```

### Linux, ARM64

```
curl -fL "https://appstore.allroads.social/v1/social.wellesley.wlycli/latest?channel=stable&platform=linux/arm64" -o wlycli
chmod +x wlycli
./wlycli -v
```

### macOS, Apple silicon

```
curl -fL "https://appstore.allroads.social/v1/social.wellesley.wlycli/latest?channel=stable&platform=darwin/arm64" -o wlycli
chmod +x wlycli
./wlycli -v
```

### macOS, Intel

```
curl -fL "https://appstore.allroads.social/v1/social.wellesley.wlycli/latest?channel=stable&platform=darwin/amd64" -o wlycli
chmod +x wlycli
./wlycli -v
```

-   Эти команды скачивают файл из стабильного канала и показывают версию CLI.
-   Версия меняется с каждым новым выпуском. При установке пользуйтесь последней документацией CLI.

## Создайте развёртывание

Выполните эту команду на подготовленном хосте с Linux. Замените значения домена, почты и SMTP из примера своими.

```
./wlycli deploy create \
-d example.com \
-e admin@example.com \
--smtp-host smtp.example.com \
--smtp-user "$MAIL_USER" \
--smtp-password "$MAIL_PASSWORD" \
--smtp-from noreply@example.com
```

| Параметр | По умолчанию |
| --- | --- |
| Каталог установки | ~/.welley/<project>. Для домена из примера имя проекта будет example\_com. |
| База данных | Встроенный PostgreSQL, данные лежат в каталоге установки. |
| Состав | Платформа Welley, конвейер RAG, Nginx, Redis и PostgreSQL, а также контейнеры обслуживания. |
| Сертификаты | Let’s Encrypt через Certbot, с еженедельным продлением. |
| Медиа | Загрузки и статические файлы по адресу https://storage.<domain>. |
| Обновления | Стабильный канал, проверка раз в день. Процесс обновления по возможности обходится без простоя. |
| Дополнительные сервисы | Минимальная установка не добавляет управляемую базу данных, CDN, телеметрию и интеграцию со Slack. |

-   Перед запуском запишите в MAIL\_USER и MAIL\_PASSWORD свои учётные данные SMTP.
-   В кратком руководстве обязательны эти шесть флагов.
-   Команда проверяет DNS, записывает файлы развёртывания, получает сертификат через Certbot и запускает контейнеры.
-   Команда deploy является псевдонимом для deployment.

## Войдите и проверьте результат

Сгенерированный пароль администратора находится в журнале платформы. Не показывайте этот вывод другим.

### Найдите начальный пароль

Это имя контейнера для example.com. Для своего домена измените имя проекта.

```
docker logs example_com-platform-blue-1 | grep "Auto-init complete"
```

### Вход

Откройте свой домен и войдите с почтой администратора, которую вы указали через -e. Сразу смените сгенерированный пароль.

### Проверьте контейнеры

Краткое руководство ожидает увидеть nginx, platform-blue, rag-pipeline-blue, postgres, redis, autoheal и snoopy.

```
docker ps
```

## Используйте CLI для администрирования

В CLI есть и команды для API платформы. Для каждой операции вашему аккаунту всё равно нужны соответствующие разрешения.

-   Перед запуском операции проверьте её текущие флаги в справке по команде.
-   Команда login принимает базовый URL API, почту и пароль. Полученный токен сессии она сохраняет.
-   Сейчас команда входа выводит токен сессии в журнал при успешном входе. Не показывайте этот вывод посторонним.

Группы команд: `accounts`, `posts`, `apps`, `emojis`, `feeds`, `reports`, `rules`, `settings`.

### Показать доступные команды

```
./wlycli --help
```

### Показать команды развёртывания

```
./wlycli deployment --help
```

### Показать параметры входа

```
./wlycli login --help
```

### Показать параметры настроек

```
./wlycli settings --help
```

## Обновления и восстановление

По умолчанию развёртывание каждый день проверяет наличие стабильных обновлений. Администратор сервера может управлять выпусками в интерфейсе администрирования.

-   Если файлы развёртывания в порядке, но некоторые контейнеры не запускаются, в кратком руководстве советуют выполнить restart: эта команда создаёт контейнеры заново.
-   Команда create не запустится снова, пока существуют каталог проекта или его контейнеры.
-   Параметр принудительного удаления стирает файлы развёртывания и встроенную базу данных. Это не способ восстановления, и ваши данные он не сохраняет.
-   Навык deploy-server всё ещё использует название deployment update. В текущей версии CLI вместо него есть deployment auto-update. Перед обслуживанием вручную загляните в актуальную справку CLI.

### Пересоздать контейнеры из существующего развёртывания

```
./wlycli deploy restart -d example.com
```

Пересоздаёт контейнеры из сохранённой конфигурации. Данные развёртывания не удаляются.

## Развёртывание с помощью ИИ-ассистента

Если ваш ИИ-ассистент поддерживает пакеты SKILL.md, скачайте наш официальный навык deploy-server. Он поможет пройти развёртывание на DigitalOcean.

Пока навык работает только с DigitalOcean. Краткое руководство по CLI подходит и для других облаков, и для вашего собственного хоста с Linux.

### Как использовать

-   Распакуйте пакет и загрузите каталог deploy-server так, как ваш ассистент устанавливает навыки.
-   Попросите ассистента использовать $deploy-server.
-   Навык спросит у вас домен, доступ к DNS, настройку SSH, данные SMTP и адрес электронной почты администратора.
-   Он может настроить виртуальную машину DigitalOcean и, если нужно, управляемую базу данных PostgreSQL. Параметры развёртывания и цену управляемой базы данных он согласует с вами.

### Перед скачиванием

-   Пакет представляет собой неизменённую копию исходного навыка.
-   Примеры скачивания и обновления в нём устарели. Актуальную ссылку на стабильную версию возьмите из краткого руководства на этом сайте. Перед обслуживанием загляните в справку CLI.
-   К навыку не прилагаются ни облачные учётные данные, ни работающий сервер, и мы не можем гарантировать, что он будет работать с любым ассистентом.

В пакете `SKILL.md`, `agents/openai.yaml` и `references/digitalocean.md`. В обеих загрузках одни и те же файлы.

[Скачать deploy-server.zip (10,7 KB)](https://welley.com/downloads/deploy-server.zip) [Скачать deploy-server.skill (10,7 KB)](https://welley.com/downloads/deploy-server.skill)

## Справочная документация

Полная документация по CLI и файлы навыка развёртывания. Читать их здесь можно без аккаунта.

-   [**Welley CLI** docs/index.md](https://welley.com/ru/administrators/docs/cli/)
-   [**Быстрый старт: минимальное развертывание Welley** docs/quick-start.md](https://welley.com/ru/administrators/docs/quick-start/)
-   [**Развертывание сервера** skills/deploy-server/SKILL.md](https://welley.com/ru/administrators/docs/deploy-server-skill/)
-   [**openai.yaml** skills/deploy-server/agents/openai.yaml](https://welley.com/ru/administrators/docs/deploy-server-openai-yaml/)
-   [**Справка по DigitalOcean** skills/deploy-server/references/digitalocean.md](https://welley.com/ru/administrators/docs/deploy-server-digitalocean/)
