gke-app-onboarding
Workflows for containerizing and deploying applications to GKE for the first time.
Works with
--- name: gke-app-onboarding description: Workflows for containerizing and deploying applications to GKE for the first time. license: Apache-2.0 --- # GKE App Onboarding Skill This skill provides workflows for preparing applications that are not yet running on Kubernetes and deploying them to GKE for the first time. ## Workflow ### 1. App Assessment Before containerizing, assess the application's requirements: - **Language & Framework**: Identify the tech stack. - **Dependencies**: List required libraries and services. - **Configuration**: Determine how the app is configured (e.g., environment variables, config files). - **Statefulness**: Identify if the app needs persistent storage (databases, file storage). - **Networking**: Determine port mapping and protocol (HTTP, TCP, etc.). ### 2. Containerization Create a container image suitable for the application: - **Dockerfile**: Create a `Dockerfile` in the project root. - **Multi-stage Builds**: Recommend multi-stage builds to keep the production image small and secure. - **Logging**: Ensure the application logs to `stdout` and `stderr` for proper log collection. - **Alternatives**: Consider using **Cloud Native Buildpacks** or **Skaffold** for automated containerization and development workflows without writing Dockerfiles. ### 3. Image Management Build and store the container image: - **Build**: Build the image locally or using a CI/CD pipeline. - **Repository**: Push the image to **Google Artifact Registry**. - **Vulnerability Scanning**: Enable automatic vulnerability scanning in Artifact Registry to detect security issues in base images and dependencies. ### 4. Manifest Generation Generate Kubernetes manifests for the application: - **Namespace**: Create a dedicated `Namespace` for the application to isolate resources. - **Security**: Label the namespace to enforce Pod Security Standards (e.g., `pod-security.kubernetes.io/enforce: restricted` and `pod-security.kubernetes.io/enforce-version: latest`). - **ServiceAccount**: Create a dedicated `ServiceAccount` for the application. Avoid using the `default` ServiceAccount to follow the principle of least privilege. - **Deployment**: Create a `Deployment` manifest. - Include resource requests and limits. - Configure liveness and readiness probes. - Reference the dedicated `ServiceAccount` using the `serviceAccountName` field. - **Service**: Create a Service manifest (e.g., ClusterIP for internal apps, LoadBalancer for external access). For advanced L7 routing, consider using the [Gateway API](../gke-networking-edge/SKILL.md). ### 5. Initial Deployment Apply the manifests and verify the deployment: - **Apply**: Use `kubectl apply -f <manifest-file>`. - **Verify**: Check pod status with `kubectl get pods` and ensure the service is accessible. ## Next Steps Once the application is running, use the [gke-productionize](../gke-productionize/SKILL.md) skill to assess its readiness for production.
More Project Management skills
firecrawl-build-onboarding
firecrawl/skills
Get Firecrawl credentials and SDK setup into a project. Use when an application needs `FIRECRAWL_API_KEY`, when an agent should add Firecrawl to `.env`, when the user wants to authenticate Firecrawl for app code, or when choosing the first SDK and docs for a new Firecrawl integration. This skill includes its own browser auth flow, so it does not depend on the website onboarding skill.
email-sequence
coreyhaines31/marketingskills
When the user wants to create or optimize an email sequence, drip campaign, automated email flow, or lifecycle email program. Also use when the user mentions "email sequence," "drip campaign," "nurture sequence," "onboarding emails," "welcome sequence," "re-engagement emails," "email automation," "lifecycle emails," "trigger-based emails," "email funnel," "email workflow," "what emails should I send," "welcome series," or "email cadence." Use this for any multi-email automated flow. For cold outreach emails, see cold-email. For in-app onboarding, see onboarding-cro.
onboard
pbakaus/impeccable
Designs and improves onboarding flows, empty states, and first-run experiences to help users reach value quickly. Use when the user mentions onboarding, first-time users, empty states, activation, getting started, or new user flows.

