infrastructure

Defines Docker and Kubernetes standards for .NET 10 services including health probes and resource limits.

2|1|Updated Feb 12, 2026
One-click install
npx skills add https://github.com/cilerler/lillian --skill infrastructure-cilerler
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: infrastructure
Source: https://github.com/cilerler/lillian/tree/main/plugins/ai-toolkit/skills/infrastructure
Command: npx skills add https://github.com/cilerler/lillian --skill infrastructure-cilerler

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Writing Dockerfiles and Kubernetes manifests for .NET services involves many decisions about base images, security contexts, health probes, resource limits, and deployment strategies, and inconsistent choices lead to fragile or insecure container deployments. ## Core Features & Use Cases - Dockerfile Standards: Multi-stage build templates using .NET 10 base images, non-root users, build arguments for NuGet authentication, and layer-caching optimization. - Kubernetes Manifest Templates: Kustomize-based base and overlay manifests with restricted security contexts, conditional Services and ConfigMaps, and CI image pinning workflows. - Operational Standards: Canonical health probe endpoints (/healthz/live, /healthz/ready, /healthz/startup), per-environment resource limits, graceful shutdown configuration, and a reviewer checklist. - Use Case: When scaffolding a new .NET 10 microservice, use this Skill to generate a compliant Dockerfile and Kustomize overlay with correct probes, resource budgets, and rolling-update strategy. ## Quick Start Use the infrastructure skill to create a Dockerfile and Kubernetes deployment manifests for my new .NET 10 service.

Frequently Asked Questions about infrastructure

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I write a Dockerfile for a .NET 10 service?

Use a multi-stage build with mcr.microsoft.com/dotnet/aspnet:10.0 as the runtime base and sdk:10.0 for building. Copy build configuration files first for layer caching, restore and publish the deployable project, and run as the non-root app user on ports 8080 and 8081.

How do I configure Kubernetes health probes for ASP.NET Core?

Map three endpoints: /healthz/live for liveness, /healthz/ready for readiness, and /healthz/startup for startup probes. Configure liveness with a 60s period, readiness with a 5s delay and 180s period, and startup with a 10s period and 30 failure threshold.

What resource limits should I set for Kubernetes deployments?

Start with environment defaults: Integration uses 250m CPU and 256Mi memory requests, while Production uses 500m CPU and 512Mi memory requests with limits at 2x. Profile actual usage before adjusting, and set ephemeral storage at 1Gi request and 2Gi limit.

Should I use Kustomize or Helm for .NET Kubernetes deployments?

This skill standardizes on Kustomize with base manifests per deployment and overlays per environment. CI pins the image and namespace in the selected overlay using kustomize edit set image before applying with kubectl kustomize.

Why does my Kubernetes pod keep getting OOMKilled?

OOMKilled events indicate memory usage exceeds the configured limit. Monitor actual consumption, raise the memory limit beyond the 2x-request default if profiling supports it, and check for memory leaks in the application before increasing limits.

When should I add a ConfigMap or Secret to a deployment?

Add a ConfigMap only when the deployment has non-secret configuration to mount, and mount a Secret only when the workload consumes one. Never create empty ConfigMaps as placeholders or commit secret values to the repository.