🖥️ Live-терминал в браузере
Полноценный shell без SSH-клиента. WebSocket-соединение к /devops/terminal, серверная часть — pty.fork() + nsenter для изоляции. ANSI-цвета, история команд, автодополнение. Drawer-интерфейс как у FileEditor.
- WebSocket + binary frames для скорости
- pty.fork() — настоящий PTY, не exec
- nsenter — изоляция namespace
- История команд сохраняется между сессиями
- ANSI escape codes — полная поддержка цветов
$ docker ps --format "table {{.Names}}\t{{.Status}}" NAMES STATUS aicores-api Up 4 hours postgres Up 4 hours redis Up 4 hours $ tail -5 /var/log/nginx/error.log # WebSocket · pty · real-time