返回 Skill 列表
extension
分类: 开发与工程无需 API Key

Skill

自动基于Dockerfile和docker-compose配置生成优化的Kubernetes部署清单,包含合理的资源限制与健康检查...

person作者: roothubclawhub

docker-to-k8s-manifests

Converts Dockerfile and docker-compose.yml files into production-ready Kubernetes deployment manifests.

Usage

CLI

# From a Dockerfile
docker-to-k8s --dockerfile ./Dockerfile --output ./k8s/

# From a docker-compose.yml
docker-to-k8s --compose ./docker-compose.yml --output ./k8s/

# With custom app name
docker-to-k8s --dockerfile ./Dockerfile --name my-app --output ./k8s/

As a library

const { DockerfileParser } = require('./scripts/dockerfile-parser');
const { ComposeParser } = require('./scripts/compose-parser');
const { K8sGenerator } = require('./scripts/k8s-generator');

// Parse Dockerfile
const parser = new DockerfileParser();
const config = parser.parseFile('./Dockerfile');

// Generate K8s manifests
const generator = new K8sGenerator();
const manifests = generator.generate(config, { name: 'my-app' });

Features

  • Parses Dockerfile instructions and extracts metadata
  • Parses docker-compose.yml multi-service configurations
  • Generates Deployment, Service, and Ingress manifests
  • Estimates resource limits based on application type
  • Configures liveness, readiness, and startup probes
  • Validates output against Kubernetes schemas
  • Applies security best practices (non-root, read-only FS, dropped capabilities)

Output

Generates the following Kubernetes resources:

  • Deployment — with resource limits, probes, security context
  • Service — ClusterIP with correct port mappings
  • Ingress — optional, for HTTP services
  • ConfigMap — for environment variables
  • PersistentVolumeClaim — for volume mounts