Заменил конфигурации в Шаге 2 на команды создания файлов
This commit is contained in:
@@ -15,9 +15,8 @@
|
||||
На каждом Proxmox-сервере отдельно открой **Datacenter → Permissions → API Tokens** и создай токен.
|
||||
|
||||
- User: `root@pam`;
|
||||
- Token ID: например `openwebui-token`;
|
||||
- сохрани Secret, который показывается только один раз;
|
||||
- Token ID должен точно совпадать со значением `auth.token_name` в конфигурации.
|
||||
- Token ID должен точно совпадать со значением `auth.token_name`;
|
||||
- сохрани Secret, который показывается только один раз.
|
||||
|
||||
Повтори операцию для `kybinka` и `pve1`.
|
||||
|
||||
@@ -25,14 +24,6 @@
|
||||
|
||||
## Шаг 2. Подготовить конфиги на TrueNAS
|
||||
|
||||
Файлы должны находиться здесь:
|
||||
|
||||
```text
|
||||
/mnt/ssd/apps/mcp/pve/config.json
|
||||
/mnt/ssd/apps/mcp/kybinka/config.json
|
||||
/mnt/ssd/apps/mcp/pve1/config.json
|
||||
```
|
||||
|
||||
Создай каталоги:
|
||||
|
||||
```bash
|
||||
@@ -43,7 +34,8 @@ mkdir -p /mnt/ssd/apps/mcp/{pve,kybinka,pve1}
|
||||
|
||||
### Конфигурация `pve`
|
||||
|
||||
```json
|
||||
```bash
|
||||
cat > /mnt/ssd/apps/mcp/pve/config.json << 'EOF'
|
||||
{
|
||||
"proxmox": {
|
||||
"host": "192.168.31.2",
|
||||
@@ -62,13 +54,13 @@ mkdir -p /mnt/ssd/apps/mcp/{pve,kybinka,pve1}
|
||||
"dev_mode": true
|
||||
}
|
||||
}
|
||||
EOF
|
||||
```
|
||||
|
||||
Сохрани этот JSON в `/mnt/ssd/apps/mcp/pve/config.json`.
|
||||
|
||||
### Конфигурация `kybinka`
|
||||
|
||||
```json
|
||||
```bash
|
||||
cat > /mnt/ssd/apps/mcp/kybinka/config.json << 'EOF'
|
||||
{
|
||||
"proxmox": {
|
||||
"host": "192.168.1.10",
|
||||
@@ -87,13 +79,13 @@ mkdir -p /mnt/ssd/apps/mcp/{pve,kybinka,pve1}
|
||||
"dev_mode": true
|
||||
}
|
||||
}
|
||||
EOF
|
||||
```
|
||||
|
||||
Сохрани этот JSON в `/mnt/ssd/apps/mcp/kybinka/config.json`.
|
||||
|
||||
### Конфигурация `pve1`
|
||||
|
||||
```json
|
||||
```bash
|
||||
cat > /mnt/ssd/apps/mcp/pve1/config.json << 'EOF'
|
||||
{
|
||||
"proxmox": {
|
||||
"host": "192.168.31.4",
|
||||
@@ -112,11 +104,10 @@ mkdir -p /mnt/ssd/apps/mcp/{pve,kybinka,pve1}
|
||||
"dev_mode": true
|
||||
}
|
||||
}
|
||||
EOF
|
||||
```
|
||||
|
||||
Сохрани этот JSON в `/mnt/ssd/apps/mcp/pve1/config.json`.
|
||||
|
||||
Проверь файлы:
|
||||
Проверь корректность JSON-файлов:
|
||||
|
||||
```bash
|
||||
python3 -m json.tool /mnt/ssd/apps/mcp/pve/config.json
|
||||
@@ -124,25 +115,25 @@ python3 -m json.tool /mnt/ssd/apps/mcp/kybinka/config.json
|
||||
python3 -m json.tool /mnt/ssd/apps/mcp/pve1/config.json
|
||||
```
|
||||
|
||||
Ограничь доступ к файлам с токенами:
|
||||
Ограничь права доступа к файлам с токенами:
|
||||
|
||||
```bash
|
||||
chmod 600 /mnt/ssd/apps/mcp/{pve,kybinka,pve1}/config.json
|
||||
```
|
||||
|
||||
`verify_ssl: false` используется для самоподписанных сертификатов Proxmox. В этом случае требуется `security.dev_mode: true`. Для production следует установить доверенный сертификат и использовать `verify_ssl: true`, `security.dev_mode: false`.
|
||||
`verify_ssl: false` используется для самоподписанных сертификатов Proxmox. Для production следует установить доверенный сертификат и использовать `verify_ssl: true` вместе с `security.dev_mode: false`.
|
||||
|
||||
---
|
||||
|
||||
## Шаг 3. Запустить три контейнера через Dockge
|
||||
|
||||
В Dockge создай один Stack с именем `proxmox-mcp`, рабочая директория:
|
||||
В Dockge создай один Stack с именем `proxmox-mcp` и рабочей директорией:
|
||||
|
||||
```text
|
||||
/mnt/ssd/apps/mcp
|
||||
```
|
||||
|
||||
Вставь в редактор Dockge **один** compose-файл:
|
||||
Вставь в редактор Dockge один compose-файл:
|
||||
|
||||
```yaml
|
||||
services:
|
||||
@@ -180,9 +171,7 @@ services:
|
||||
- /mnt/ssd/apps/mcp/pve1/config.json:/app/proxmox-config/config.json:ro
|
||||
```
|
||||
|
||||
Не добавляй несколько блоков `services:` подряд. `networks: {}` не требуется — Compose создаст сеть автоматически.
|
||||
|
||||
Замени `ЗАМЕНИТЬ_КЛЮЧ_*` на отдельные ключи для OpenAPI-доступа, нажми **Save**, затем **Down** и **Deploy/Up**. После изменения JSON-файлов контейнеры нужно перезапустить или пересоздать.
|
||||
Не добавляй несколько блоков `services:` подряд. Нажми **Save**, затем **Down** и **Deploy/Up**. После изменения JSON-файлов контейнеры нужно перезапустить или пересоздать.
|
||||
|
||||
---
|
||||
|
||||
@@ -217,13 +206,13 @@ curl -H "Authorization: Bearer ЗАМЕНИТЬ_КЛЮЧ_PVE" \
|
||||
|
||||
## Диагностика
|
||||
|
||||
Если в логе появляется:
|
||||
Если появляется ошибка:
|
||||
|
||||
```text
|
||||
Insecure TLS configuration blocked
|
||||
```
|
||||
|
||||
проверь, что внутри контейнера присутствует именно такая структура:
|
||||
проверь, что внутри каждого файла присутствует:
|
||||
|
||||
```json
|
||||
"security": {
|
||||
@@ -231,7 +220,7 @@ Insecure TLS configuration blocked
|
||||
}
|
||||
```
|
||||
|
||||
Проверка маунта:
|
||||
Проверка volume-маунта:
|
||||
|
||||
```bash
|
||||
docker inspect proxmox-mcp-pve \
|
||||
@@ -252,4 +241,4 @@ docker exec proxmox-mcp-pve cat /app/proxmox-config/config.json
|
||||
|
||||
`McpError: Connection closed` является вторичной ошибкой: MCP OpenAPI Proxy закрывается после ошибки валидации конфигурации.
|
||||
|
||||
> Никогда не публикуй в чат или репозиторий реальные значения `PROXMOX_API_KEY` и `auth.token_value`. Если ключи уже были опубликованы, их следует заменить.
|
||||
> Не публикуй реальные значения `PROXMOX_API_KEY` и `auth.token_value` в чат или репозиторий. Если они были опубликованы, их следует заменить.
|
||||
|
||||
Reference in New Issue
Block a user