From kube-dc
Create a new Kube-DC project with isolated VPC networking inside an existing organization. Handles network type selection (cloud vs public), organization verification, and project manifest generation.
npx claudepluginhub kube-dc/kube-dc-public --plugin kube-dcThis skill uses the workspace's default tool permissions.
- Organization must exist and be Ready
Manage Kube-DC networking resources — create External IPs (EIp), Floating IPs (FIp), and understand VPC networking. Includes decision guide for choosing between EIP and FIP.
Creates Elastic Cloud Serverless projects for Elasticsearch, Observability, or Security via REST API, saves credentials to file, and bootstraps scoped Elasticsearch API key. Use for provisioning new search or observability environments.
Deploys containerized apps to Kubernetes clusters via kubectl manifests for Deployments, Services, ConfigMaps, Secrets, Ingress. Adds health checks, resource limits, rolling updates, Helm charts for EKS, GKE, AKS, Docker Compose migrations.
Share bugs, ideas, or general feedback.
kubectl get organization {org-name} -n {org-name}
The organization namespace is the same as the organization name.
| Type | When to Use |
|---|---|
cloud (recommended) | Web apps, APIs, microservices — shared NAT gateway, more secure |
public | Game servers, direct IP needs — dedicated public gateway IP |
Default to cloud unless the user explicitly needs dedicated public IPs.
apiVersion: kube-dc.com/v1
kind: Project
metadata:
name: {project-name}
namespace: {org-name}
spec:
egressNetworkType: cloud # or: public
See @project-template.yaml for the full template.
kubectl get project {project-name} -n {org-name} -w
The project creates namespace {org-name}-{project-name} with:
{org-name}-{project-name}/defaultssh-keypair-default, authorized-keys-default)kubectl get project {project-name} -n {org-name}
kubectl get secret ssh-keypair-default -n {org-name}-{project-name}
kubectl get eip -n {org-name}-{project-name}
After applying, run these checks to confirm the project was created successfully:
# 1. Check project phase (expect: Ready)
kubectl get project {project-name} -n {org-name} -o jsonpath='{.status.phase}'
# 2. Verify project namespace was created
kubectl get ns {org-name}-{project-name}
# 3. Verify SSH keypair exists in project namespace
kubectl get secret ssh-keypair-default -n {org-name}-{project-name}
# 4. Verify default gateway EIP was created
kubectl get eip -n {org-name}-{project-name}
Success: Phase is Ready, namespace exists, SSH keypair and EIP present.
Failure: If phase is Pending or Failed, check events: kubectl describe project {project-name} -n {org-name}
cloud network type