40-deploy-k8s
Деплой k3s + ingress-nginx, namespace на команду, NetworkPolicy-изоляция, self-healing.
Install / Use
npx skills add kotru21/HackTrainingWebappsInstalls into whichever agent you are using.
Cursor Rules
Cursor IDE rules (v2)
Quality Score
Category
OperationsSupported Platforms
Tags
Skill content
View source on GitHubdescription: Деплой k3s + ingress-nginx, namespace на команду, NetworkPolicy-изоляция, self-healing. globs: ["deploy/", "scripts/"] alwaysApply: false
Деплой и инфраструктура (k3s, одна VM)
Спека — docs/SPEC.md §3, §8. Оркестрация raundов — docs/instructor-guide.md.
Инфра
- k3s запускать с
--disable traefik; ingress-контроллер — ingress-nginx (ingressClassName: nginx). Не использовать Traefik. - StorageClass:
local-path(встроен в k3s) для per-team PVCworkspaceи postgres. - Манифесты — kustomize:
base/,team-template/(app+postgres+code-server+PVC+Service+NetworkPolicy+ ConfigMap/Secret),overlays/team-a|team-b,platform/(scoreboard+checker+planter+Loki+Alloy+Grafana+ internal-metadata). Никаких хардкоженных имён namespace в шаблоне — только через overlay.
Изоляция (NetworkPolicy — критично для безопасности полигона)
- default-deny ingress/egress в namespace команды.
- Разрешён вход от
platform(checker/planter/scoreboard). - Вход от АТАКУЮЩЕЙ команды — ТОЛЬКО на HTTP-порт
app. Никогда на postgres / code-server / платформу. - Egress стендов наружу запрещён (кроме внутрикластерной SSRF-мишени
internal-metadata). swap-roles.shинвертирует направление политики между раундами.
Self-healing и сброс
- Каждый под app:
livenessProbe /healthz,readinessProbe /readyz,resources.limits,restartPolicy: Always. - В
reference-оверлеях:runAsNonRoot,readOnlyRootFilesystem,drop: [ALL], пиннинг образа по digest. reset-round.shвосстанавливает уязвимый baseline из init-снапшота наworkspacePVC + пересев БД + planter, целевое время < 60 c. Скрипты идемпотентны.
RBAC команд
kubeconfig команды ограничен своим namespace (edit ConfigMap/Secret/Deployment, exec, apply). Нет доступа
в чужой namespace и в platform. code-server запускается под этим же ограниченным ServiceAccount.
Related Skills
Douyin_TikTok_Download_API
20.3k🚀 Self-hosted TikTok & Douyin scraper and no-watermark video downloader — async REST API, MCP server, CLI and web console for posts, profiles, comments and playlists. Self-healing identity pool, PostgreSQL archive, one docker compose up. 抖音、TikTok 数据采集与无水印视频下载 API,自托管,支持 MCP 调用与 Docker 一键部署。
worldmonitor
87.2kReal-time global intelligence dashboard. AI-powered news aggregation, geopolitical monitoring, and infrastructure tracking in a unified situational awareness interface
nacos
33.4kan easy-to-use dynamic service discovery, configuration and service management platform for building AI cloud native applications.
dbx
20.4k25 MB lightweight cross-platform database client for 90+ databases, including MySQL, PostgreSQL, SQLite, Redis, MongoDB, DuckDB, SQL Server, and Dameng. Built-in AI, MCP Server, CLI, desktop and Docker.
Security Score
Audited on Invalid Date
