- portainer-ce:lts, bridge, 127.0.0.1:9000 - /var/run/docker.sock:ro (read-only) - data/ исключён из git
40 lines
1.8 KiB
Markdown
40 lines
1.8 KiB
Markdown
# CLAUDE.md — portainer (личный, str-u-01)
|
||
|
||
## Что
|
||
Portainer CE для личного контура на str-u-01 (45.10.53.148). Управляет только локальным Docker'ом (str-u-01). Отдельный от рабочего Portainer'а на web.hhivp.com:9443.
|
||
|
||
## Стек
|
||
- `portainer/portainer-ce:lts` (LTS-канал)
|
||
- bridge, `127.0.0.1:9000:9000` (HTTP UI)
|
||
- mount `/var/run/docker.sock:ro` — read-only сокет (read-only режим Portainer всё равно может многое читать, но пишет ограниченно; полная функциональность при rw — поднять при необходимости)
|
||
- volume `./data` (БД Portainer)
|
||
- log-driver: journald
|
||
|
||
## Структура
|
||
```
|
||
portainer/
|
||
├── docker-compose.yml
|
||
├── .gitignore # исключает data/
|
||
└── CLAUDE.md
|
||
```
|
||
|
||
На сервере: `/opt/docker/sites/portainer/`. Публикуется через nginx на `prtnr.striker.su`.
|
||
|
||
## Деплой
|
||
```bash
|
||
ssh striker@str-u-01.striker.su
|
||
cd /opt/docker/sites/portainer
|
||
git pull
|
||
docker compose pull && docker compose up -d
|
||
```
|
||
|
||
## Первый запуск
|
||
Открыть https://prtnr.striker.su в течение 5 минут после старта (Portainer security: лимит на initial-setup), создать админа.
|
||
|
||
## nginx
|
||
vhost: `/etc/nginx/conf.d/prtnr.striker.su` (ssl + reverse-proxy на 127.0.0.1:9000).
|
||
WebSocket headers обязательны (Portainer console / log streams).
|
||
|
||
## ⚠️ Безопасность
|
||
Portainer = root над Docker'ом сервера. Доступ только через nginx + LE + сильный пароль + желательно 2FA в самом Portainer'е (Settings → Authentication).
|