Category
Application development
1. Introduction
Cloud Code for IntelliJ is a Google-provided IDE plugin that helps you build, iterate, and troubleshoot containerized applications—especially Kubernetes applications—directly from IntelliJ IDEA and other IntelliJ-based IDEs.
In simple terms: it brings “inner-loop” cloud-native development into your IDE. Instead of manually running long command sequences to build container images, deploy them to a cluster, watch logs, and repeat, Cloud Code for IntelliJ streamlines those workflows and connects them to familiar IntelliJ run/debug actions.
Technically, Cloud Code for IntelliJ integrates your IDE with common Kubernetes and container tools (most notably Skaffold and kubectl) to enable repeatable build/deploy cycles, YAML authoring assistance, cluster interaction, and (in supported configurations) debugging against workloads running in Kubernetes. It is a developer tool installed on your workstation—not a hosted Google Cloud service—so it relies heavily on your local toolchain and on the target environment you deploy to (local Kubernetes, GKE, etc.).
The problem it solves is friction: Kubernetes and cloud-native development often involves a lot of “glue work” (tool setup, manifests, rebuild/redeploy cycles, context switching, and troubleshooting across terminals). Cloud Code for IntelliJ reduces that overhead so teams can ship changes faster while staying consistent with production-like workflows.
Naming note: Google has historically used names like “Google Cloud Tools for IntelliJ.” Today, “Cloud Code” is the name used in current Google Cloud documentation for these IDE extensions. Verify the latest naming and support status in the official docs for your IDE version: https://cloud.google.com/code/docs/intellij
2. What is Cloud Code for IntelliJ?
Cloud Code for IntelliJ is an IDE extension from Google Cloud that supports cloud-native application development workflows inside IntelliJ-based IDEs. Its official purpose is to help developers create, edit, run, and troubleshoot applications destined for Kubernetes (and related container-based platforms) with less manual setup and fewer context switches.
Core capabilities (high-level)
- Kubernetes-focused inner-loop development using Skaffold-driven build and deploy loops.
- Kubernetes configuration authoring assistance (editing, validation, and navigation for YAML).
- Cluster interaction from the IDE (view resources, fetch logs, port-forward, etc., depending on plugin version and configuration).
- Run/debug integration that connects IntelliJ run configurations to container/Kubernetes workflows (backed by Skaffold).
Major components
- Cloud Code plugin installed in IntelliJ (JetBrains Marketplace distribution).
- Local developer tools typically used underneath:
kubectl(Kubernetes CLI)- Skaffold (build/deploy orchestration)
- A container build system (often Docker; sometimes Cloud Build via Skaffold configuration)
- Access to a Kubernetes cluster (local or remote such as Google Kubernetes Engine)
Cloud Code may help you install or manage some dependencies (for example Skaffold), depending on version and IDE; verify in official docs for your exact version.
Service type
- Client-side developer tool (IDE plugin), not a managed runtime service.
- It does not “run in a region” the way compute services do. Your deployments are regional/zonal depending on the target (for example, a GKE cluster’s location).
Scope (how it’s “scoped”)
- Workstation-scoped: installed per developer machine and per IDE installation.
- Identity-scoped: actions against Google Cloud use the developer’s credentials (commonly via Google Cloud CLI authentication and/or Application Default Credentials).
- Project-scoped (indirectly): operations target whichever Google Cloud project your tooling is configured to use (for example
gcloud config set project, and whichever cluster context is active inkubeconfig).
How it fits into the Google Cloud ecosystem
Cloud Code for IntelliJ sits in the Application development layer. It complements (not replaces) services like: – Google Kubernetes Engine (GKE) for running Kubernetes workloads. – Artifact Registry for storing container images. – Cloud Build for building images in the cloud (when configured via Skaffold). – Cloud Logging / Cloud Monitoring for observing running services.
Cloud Code for IntelliJ is best thought of as “developer productivity glue” that helps teams apply Google Cloud best practices from day one while keeping the workflow close to upstream Kubernetes tooling.
3. Why use Cloud Code for IntelliJ?
Business reasons
- Faster iteration cycles: Reduce build/deploy friction so developers can test changes quickly.
- More consistent developer workflows: Standardize how teams run and deploy Kubernetes apps locally and to shared clusters.
- Shorter onboarding time: New engineers can be productive faster with IDE-integrated workflows and fewer tribal-knowledge scripts.
Technical reasons
- Skaffold-driven workflows: Skaffold is a widely used tool for repeatable Kubernetes build/deploy loops. Cloud Code leverages that rather than inventing a proprietary pipeline.
- Kubernetes-native development: Encourages manifests, deployments, and service definitions that more closely reflect how things run in production.
- Tighter IDE integration: Developers can keep their flow in IntelliJ (run configs, logs, navigation) rather than living entirely in terminals.
Operational reasons
- Promotes repeatability: A repo-based
skaffold.yamland Kubernetes manifests reduce “works on my machine” issues. - Better handoff to CI/CD: The same container build and deploy definitions can often be reused (or mirrored) in CI pipelines.
Security / compliance reasons
- Leverages standard IAM + Kubernetes RBAC: Access to GKE and Google Cloud resources is controlled by existing identity and authorization layers.
- Encourages fewer ad-hoc credentials: Teams can standardize on Google Cloud CLI auth flows, workload identity patterns, and secret managers rather than embedding secrets in dev scripts.
Scalability / performance reasons
Cloud Code for IntelliJ does not directly make your runtime scale; it improves how reliably you develop and ship scalable services by: – Making it easier to test container builds early – Encouraging Kubernetes-friendly config patterns – Reducing drift between local/dev and cluster behavior
When teams should choose Cloud Code for IntelliJ
Choose it when: – You develop Kubernetes applications (especially targeting GKE) and want an IDE-first loop. – Your team uses IntelliJ-based IDEs and wants a supported Google Cloud plugin. – You want to standardize inner-loop tooling around Skaffold + kubectl.
When teams should not choose it
Avoid or reconsider if: – You are not building for Kubernetes/containers (Cloud Code will add little value). – Your organization standardizes on a different IDE ecosystem (for example, VS Code only). – You cannot install local dev tooling (corporate restrictions) and you rely on hosted dev environments—consider Cloud-based IDE workflows instead (for example Cloud Workstations), but verify Cloud Code compatibility and current options in official docs.
4. Where is Cloud Code for IntelliJ used?
Industries
Cloud Code for IntelliJ is common anywhere Kubernetes is common: – SaaS and technology companies – Financial services and fintech (with strong audit controls) – Retail/e-commerce – Media and gaming – Healthcare and life sciences (with compliance requirements)
Team types
- Application development teams building microservices
- Platform engineering teams building “golden path” templates
- DevOps/SRE teams supporting developer tooling and CI/CD
- Security teams reviewing developer workflows and access patterns
Workloads
- Microservices on Kubernetes (HTTP APIs, background workers)
- Event-driven services (paired with Pub/Sub, Kafka, etc.)
- Internal developer platforms (IDPs) that standardize deployment patterns
- Migration workloads moving from VMs to containers
Architectures and deployment contexts
- Local development clusters (Minikube, kind, Docker Desktop Kubernetes)
- Shared dev/staging clusters
- Production clusters on Google Kubernetes Engine (GKE)
Production vs dev/test usage
Cloud Code for IntelliJ is primarily a development-time tool. It should be used to: – Build and validate artifacts early – Rapidly test changes against Kubernetes – Troubleshoot issues in dev/staging
Production releases should still be governed by CI/CD, approvals, and policy controls. Cloud Code can help create consistent configs, but it should not be the sole production deployment mechanism for regulated environments.
5. Top Use Cases and Scenarios
Below are realistic scenarios where Cloud Code for IntelliJ fits well.
1) Inner-loop Kubernetes development for microservices
- Problem: Rebuilding images and redeploying to Kubernetes after every code change is slow and error-prone.
- Why it fits: Cloud Code uses Skaffold to automate rebuild/redeploy loops.
- Example scenario: A team iterates on a Java API and wants each save to trigger a rebuild and rollout to a dev namespace.
2) Developing services locally with production-like Kubernetes manifests
- Problem: Local “run” scripts diverge from how services run in production.
- Why it fits: Cloud Code workflows center on Kubernetes manifests and container images.
- Example scenario: Developers use Minikube and the same manifests that will later be used on GKE.
3) Standardizing developer workflows across the team
- Problem: Each engineer has different scripts and commands; onboarding takes weeks.
- Why it fits: A repo with
skaffold.yamlbecomes the standard entry point for run/deploy. - Example scenario: Platform team provides a template repo with Cloud Code-friendly setup.
4) Faster troubleshooting using logs and quick cluster navigation
- Problem: Engineers waste time switching between IDE and terminals to inspect pods and logs.
- Why it fits: Cloud Code can expose Kubernetes resources and streamline log access (capabilities vary by version).
- Example scenario: During a dev test, an engineer quickly inspects pod logs after a failed readiness probe.
5) Kubernetes YAML authoring with validation and structure
- Problem: YAML mistakes cause deployment failures and time-consuming debugging.
- Why it fits: IDE assistance for Kubernetes YAML reduces syntax and schema errors.
- Example scenario: A developer adds liveness/readiness probes and catches schema issues before applying.
6) Multi-environment deployments via Skaffold profiles
- Problem: Dev/staging/prod environments require different settings and image registries.
- Why it fits: Skaffold profiles can capture environment differences cleanly.
- Example scenario:
profile=devdeploys to Minikube;profile=gkepushes to Artifact Registry and deploys to a GKE namespace.
7) Developing on GKE with proper IAM and RBAC
- Problem: Teams need controlled access to shared clusters.
- Why it fits: Cloud Code uses standard auth paths (
gcloud, kubeconfig), fitting enterprise controls. - Example scenario: Developers have read-only access in staging and full deploy rights in dev namespaces.
8) Building containers in the cloud (Cloud Build) from the same workflow
- Problem: Developer laptops can’t build large images reliably or quickly.
- Why it fits: Skaffold can be configured to use Cloud Build; Cloud Code runs the same definitions.
- Example scenario: A monorepo uses Cloud Build for consistent builds across OS environments.
9) Artifact Registry integration patterns for container images
- Problem: Teams need a secure place to store images and control access.
- Why it fits: The workflow naturally pushes images to a registry used by GKE.
- Example scenario: Images are pushed to Artifact Registry with least-privilege access for devs and cluster nodes.
10) Migration from legacy deployment scripts to Kubernetes-native workflows
- Problem: Old shell scripts are brittle and hard to maintain.
- Why it fits: Cloud Code encourages declarative config and tool-driven processes.
- Example scenario: A team replaces “SSH and restart” scripts with Kubernetes Deployments and Skaffold.
6. Core Features
Feature availability can vary by IDE version and plugin release. Always validate against official documentation for Cloud Code for IntelliJ: https://cloud.google.com/code/docs/intellij
1) Skaffold-based build/deploy/run workflows
- What it does: Runs Skaffold to build container images and deploy Kubernetes manifests repeatedly during development.
- Why it matters: Skaffold provides a repeatable, tool-agnostic loop.
- Practical benefit: Fewer manual steps; consistent results across team members.
- Limitations/caveats: Requires a working local toolchain (Docker, kubectl) and cluster access. Build behavior depends on Skaffold configuration.
2) IDE run configurations for Kubernetes development
- What it does: Connects IntelliJ “Run/Debug” to Kubernetes development tasks (often via Skaffold).
- Why it matters: Keeps developers in one workflow and enables repeatability.
- Practical benefit: One-click start/stop of dev loops; easier onboarding.
- Limitations/caveats: UI labels and exact configuration steps may vary across IntelliJ versions and plugin releases—verify in your IDE.
3) Kubernetes YAML editing support
- What it does: Helps you author Kubernetes resources (Deployments, Services, ConfigMaps, etc.) with IDE assistance.
- Why it matters: Kubernetes YAML is verbose; mistakes are common.
- Practical benefit: Catch errors early, improve correctness, speed up manifest authoring.
- Limitations/caveats: Schema validation depends on your IDE/plugin capabilities and the Kubernetes API versions you target.
4) Kubernetes resource exploration (cluster interaction)
- What it does: Provides ways to view and interact with cluster resources from within the IDE (for example, viewing workloads, logs, or describing resources).
- Why it matters: Reduces context switching between IDE and terminal.
- Practical benefit: Faster troubleshooting loops during development.
- Limitations/caveats: Some actions may still require
kubectland correct kubeconfig context; capabilities can differ by version.
5) Log access and basic troubleshooting workflows
- What it does: Surfaces container logs and status information to aid debugging.
- Why it matters: Logs are often the quickest route to root cause in Kubernetes.
- Practical benefit: Less time hunting for the right pod or label selector.
- Limitations/caveats: Large log volume can incur costs in managed logging backends; access is controlled by RBAC/IAM.
6) Toolchain alignment (kubectl, contexts, credentials)
- What it does: Works with your configured Kubernetes contexts and your Google Cloud authentication.
- Why it matters: Enterprises need controlled access without bypassing IAM.
- Practical benefit: Fits existing security governance: IAM + RBAC + audit logging.
- Limitations/caveats: If authentication plugins (for example, the GKE gcloud auth plugin) are missing or misconfigured, cluster access fails.
7) Support for local and remote clusters
- What it does: Lets you run the same dev workflow on local clusters (Minikube/kind) and remote clusters (like GKE), depending on your kubeconfig context.
- Why it matters: Local-first is cheaper; remote is more production-like.
- Practical benefit: Choose the right environment per task.
- Limitations/caveats: Remote clusters add latency and cost, and require stronger access controls.
8) Works well with Git-based workflows
- What it does: Keeps most “how to build/deploy” knowledge in repo files (
skaffold.yaml, manifests, Dockerfile). - Why it matters: Versioned configuration supports review and compliance.
- Practical benefit: CI systems can reuse the same definitions.
- Limitations/caveats: Requires discipline to keep configs clean and environment-appropriate.
7. Architecture and How It Works
Cloud Code for IntelliJ is best understood as an IDE layer over established Kubernetes tooling.
High-level architecture
- The developer edits code and Kubernetes manifests in IntelliJ.
- Cloud Code triggers Skaffold operations (build, deploy, dev loop).
- Skaffold uses a builder (often Docker; optionally Cloud Build if configured) to produce container images.
- Skaffold deploys Kubernetes manifests using kubectl (or other deployers depending on Skaffold config).
- The Kubernetes cluster schedules pods, runs containers, and exposes services.
- Logs and status are retrieved from Kubernetes and (optionally) Google Cloud observability services.
Request/data/control flow (typical dev loop)
- Developer clicks Run (or starts a dev loop).
- Cloud Code calls Skaffold with the repo’s
skaffold.yaml. - Skaffold builds the container image.
- Skaffold applies manifests to the target cluster.
- Developer tests the service (often via port-forward or an ingress).
- Developer changes code; Skaffold detects changes and repeats the cycle.
Integrations with related services
Cloud Code itself is not the integration point; your workflow integrates with services through: – GKE as the runtime (Kubernetes control plane and nodes) – Artifact Registry as the image registry – Cloud Build as an optional cloud build backend (via Skaffold configuration) – Cloud Logging/Monitoring for production-grade observability (recommended for real environments)
Dependency services and tools
- Kubernetes cluster (local or GKE)
- Skaffold installed locally (or managed by the plugin, depending on version)
- kubectl installed locally
- Container build tool (Docker) or cloud build backend
- Google Cloud CLI (
gcloud) for authenticating to Google Cloud and (for GKE) fetching cluster credentials
Security/authentication model
- Google Cloud identity: Typically via
gcloud auth loginfor user credentials. - Cluster auth:
- For GKE: kubeconfig entries obtained via
gcloud container clusters get-credentialsand authenticated via the appropriate GKE auth plugin. - For local clusters: kubeconfig points to local API server.
- Authorization:
- Google Cloud IAM controls who can access GKE APIs, Artifact Registry, Cloud Build, etc.
- Kubernetes RBAC controls who can perform actions in the cluster (namespaces, deployments, logs).
Networking model
- Cloud Code runs locally and talks to:
- Kubernetes API server (local or remote)
- Container registry endpoints (Artifact Registry) when pushing images
- Cloud Build APIs if configured
- For testing services, common patterns include:
kubectl port-forwardto localhost- Ingress/Gateway in a shared cluster
- LoadBalancer services (costly in cloud environments)
Monitoring/logging/governance considerations
- Dev clusters: basic logs via kubectl are often enough.
- Shared/prod clusters: centralize logs/metrics in Cloud Logging/Monitoring with retention and access policies.
- Governance: treat
skaffold.yamland manifests like production artifacts (code review, policy checks).
Simple architecture diagram (developer inner loop)
flowchart LR
Dev[Developer in IntelliJ] --> CC[Cloud Code for IntelliJ]
CC -->|invokes| Skaffold[Skaffold]
Skaffold -->|build| Docker[Local Docker Engine]
Skaffold -->|deploy via kubectl| K8s[Kubernetes Cluster\n(Local or GKE)]
Dev -->|test via localhost| PortFwd[Port-forward / Local URL]
K8s --> Logs[Pod Logs / Events]
Logs --> Dev
Production-style architecture diagram (inner loop + CI/CD + platform services)
flowchart TB
subgraph DevWorkstation["Developer Workstation"]
IDE[IntelliJ + Cloud Code]
Skaffold2[Skaffold/kubectl]
end
subgraph GoogleCloud["Google Cloud"]
AR[Artifact Registry]
GKE[GKE Cluster]
CB[Cloud Build (optional via Skaffold/CI)]
CL[Cloud Logging]
CM[Cloud Monitoring]
IAM[IAM + Org Policies]
end
subgraph GitOps["Source Control / CI"]
Git[Git Repository]
CI[CI Pipeline\n(build/test/scan)]
end
IDE --> Skaffold2
Skaffold2 -->|build locally or via CB| CB
Skaffold2 -->|push image| AR
Skaffold2 -->|apply manifests| GKE
Git --> CI
CI --> CB
CB --> AR
CI -->|deploy (CD)| GKE
GKE --> CL
GKE --> CM
IAM --> GKE
IAM --> AR
IAM --> CB
8. Prerequisites
Account/project requirements
- A Google Cloud account.
- A Google Cloud project (recommended even if you start locally, because most teams eventually target GKE/Artifact Registry).
- Billing enabled if you will use paid services (GKE, Artifact Registry beyond free quotas, Cloud Build, logging beyond free allotments, etc.).
Permissions / IAM roles (common minimums)
Exact roles depend on what you do. Common needs:
– For GKE cluster access:
– roles/container.clusterViewer (view clusters) and/or roles/container.developer (deploy to clusters)
– Kubernetes RBAC permissions in the cluster namespace
– For Artifact Registry:
– roles/artifactregistry.writer (push images) and roles/artifactregistry.reader (pull images)
– For Cloud Build (if used):
– roles/cloudbuild.builds.editor or a more restricted custom role
Use least privilege and prefer group-based access. Verify with your security team and official IAM docs.
Tools you’ll typically need
- IntelliJ IDEA (Community or Ultimate depending on your language needs)
- Cloud Code for IntelliJ plugin (JetBrains Marketplace)
- Google Cloud CLI (
gcloud): https://cloud.google.com/sdk/docs/install - Kubernetes CLI (
kubectl): https://kubernetes.io/docs/tasks/tools/ - Skaffold: https://skaffold.dev/docs/install/ (may be managed by plugin; verify)
- A local container runtime (commonly Docker Desktop)
- Access to a Kubernetes cluster:
- Local: Minikube or kind
- Remote: GKE (optional for the lab, but common for real use)
Region availability
Cloud Code for IntelliJ itself is not region-bound. Region constraints apply to the services you use (GKE, Artifact Registry, Cloud Build). Check product-specific locations: – GKE locations: https://cloud.google.com/kubernetes-engine/docs/concepts/types-of-clusters#location – Artifact Registry locations: https://cloud.google.com/artifact-registry/docs/repositories/repo-locations
Quotas/limits
Cloud Code has no “quota” in the cloud-service sense, but you can hit: – GKE quotas (clusters, nodes, IPs) – Artifact Registry quotas (storage, requests) – Cloud Build quotas (build minutes, concurrency) – Cloud Logging ingestion/retention constraints
Always verify quotas in the Google Cloud Console for your project.
Prerequisite services (if deploying to Google Cloud)
- GKE API enabled (if using GKE)
- Artifact Registry API enabled (if pushing images)
- Cloud Build API enabled (if using Cloud Build)
9. Pricing / Cost
Cloud Code for IntelliJ is generally available at no additional charge as an IDE plugin. There is no “Cloud Code runtime” that you pay for.
However, Cloud Code-driven workflows commonly create costs in other Google Cloud services.
Pricing dimensions (where costs actually come from)
- Compute:
- GKE nodes (Compute Engine VMs) or GKE Autopilot resources
- Any load balancers created by Kubernetes Services of type
LoadBalancer - Container image storage and requests:
- Artifact Registry storage (GB-month) and operations (pulls/pushes)
- Build costs:
- Cloud Build build minutes (if you configure Skaffold to build in Cloud Build)
- Observability:
- Cloud Logging ingestion, retention, and log-based metrics
- Cloud Monitoring metrics and uptime checks
- Networking:
- Egress traffic from GKE to the internet or across regions
- Load balancer data processing (if applicable)
Free tier (what to expect)
Free tiers change over time and vary by product. Cloud Code itself doesn’t have a metered free tier, but other services may. – Check the Google Cloud Free Program: https://cloud.google.com/free – Use the Google Cloud Pricing Calculator for estimates: https://cloud.google.com/products/calculator
Cost drivers (most common surprises)
- Leaving a GKE cluster running (nodes cost money continuously).
- Using
LoadBalancerservices in dev (provisions billable load balancers). - High log volume from chatty services.
- Large image layers pushed frequently during iterative development.
Hidden/indirect costs
- Developer time: inefficient inner loops can be more expensive than infrastructure.
- CI duplication: building locally + building again in CI if not aligned.
- Storage sprawl: unused images piling up in registries.
Cost optimization tips
- Prefer local clusters (Minikube/kind) for most development.
- Use port-forward instead of cloud load balancers during development.
- Use Skaffold file sync where applicable to avoid full rebuilds (verify support and configuration).
- Clean up unused images and set Artifact Registry cleanup policies (verify current feature set in Artifact Registry docs).
- Keep images small (multi-stage builds, minimal base images).
- For shared clusters, use namespaces and resource quotas to prevent runaway usage.
Example low-cost starter estimate (conceptual)
A low-cost start often looks like: – Local Kubernetes cluster (no cloud compute) – No external load balancers – Optional: a small Artifact Registry repo used sparingly
Your primary costs may be near zero until you deploy to GKE or use paid build/registry/observability features. Exact costs depend on usage and region—use the calculator.
Example production cost considerations
In production-like environments: – GKE cluster sizing, node pools, and autoscaling dominate compute costs. – Centralized logging/metrics plus retention can be significant. – Artifact Registry storage and high pull traffic can add up. – CI builds and security scanning (if done in Cloud Build or other services) add predictable pipeline costs.
Official references: – Pricing landing page: https://cloud.google.com/pricing – Pricing calculator: https://cloud.google.com/products/calculator – Artifact Registry pricing: https://cloud.google.com/artifact-registry/pricing – GKE pricing: https://cloud.google.com/kubernetes-engine/pricing – Cloud Build pricing: https://cloud.google.com/build/pricing
10. Step-by-Step Hands-On Tutorial
This lab focuses on a safe, low-cost workflow: developing a Kubernetes app locally (Minikube) using Cloud Code for IntelliJ + Skaffold. You can adapt the same project to deploy to GKE afterward.
Objective
Set up Cloud Code for IntelliJ and use it to run an iterative development loop for a simple containerized web service on a local Kubernetes cluster using Skaffold.
Lab Overview
You will:
1. Install prerequisites (Minikube, kubectl, Skaffold, gcloud).
2. Install Cloud Code for IntelliJ.
3. Create a small containerized app with Kubernetes manifests and a skaffold.yaml.
4. Run a dev loop (rebuild/redeploy on change).
5. Validate using port-forward.
6. Clean up.
This lab is designed to be runnable without provisioning paid Google Cloud resources. (If you later deploy to GKE, that will incur charges.)
Step 1: Install and verify local tooling
1.1 Install Google Cloud CLI (optional but recommended)
Follow: https://cloud.google.com/sdk/docs/install
Authenticate (optional for local-only, required for GKE later):
gcloud auth login
gcloud auth application-default login
Set a default project (optional now; required for GKE later):
gcloud config set project YOUR_PROJECT_ID
Expected outcome:
– gcloud version works
– You can authenticate successfully if needed
1.2 Install Docker
Install Docker Desktop (or Docker Engine on Linux) and ensure it’s running.
Verify:
docker version
docker ps
Expected outcome: – Docker daemon is running and responds
1.3 Install kubectl
Install instructions: https://kubernetes.io/docs/tasks/tools/
Verify:
kubectl version --client=true
Expected outcome: – kubectl client prints version info
1.4 Install Minikube
Install: https://minikube.sigs.k8s.io/docs/start/
Start Minikube (Docker driver shown as a common option; choose what fits your OS):
minikube start --driver=docker
Verify:
kubectl get nodes
Expected outcome:
– One node appears in Ready state
1.5 Install Skaffold
Install: https://skaffold.dev/docs/install/
Verify:
skaffold version
Expected outcome: – Skaffold prints a version
Note: Some Cloud Code versions can manage Skaffold for you. Even if that’s true, having a known-good CLI install makes troubleshooting much easier.
Step 2: Install Cloud Code for IntelliJ
- Open IntelliJ IDEA.
- Go to Settings/Preferences → Plugins → Marketplace.
- Search for Cloud Code.
- Install Cloud Code for IntelliJ and restart the IDE when prompted.
Expected outcome: – Cloud Code features appear in the IDE (for example, Cloud Code menus, Kubernetes-related run configurations, or tool windows). The exact UI can differ by version—verify with official docs: https://cloud.google.com/code/docs/intellij
Verification: – In IntelliJ, confirm the plugin is listed as installed and enabled.
Step 3: Create a sample Kubernetes app project
Create a new folder, for example cloudcode-intellij-lab/, with the following structure:
cloudcode-intellij-lab/
app/
main.py
requirements.txt
Dockerfile
k8s/
deployment.yaml
service.yaml
skaffold.yaml
3.1 Application code (Python Flask)
Create app/requirements.txt:
Flask==3.0.0
gunicorn==21.2.0
Create app/main.py:
from flask import Flask
import os
app = Flask(__name__)
@app.get("/")
def hello():
target = os.environ.get("TARGET", "world")
return f"Hello, {target}!\n"
if __name__ == "__main__":
# For local runs only; container uses gunicorn
app.run(host="0.0.0.0", port=8080)
Expected outcome:
– A minimal HTTP service that responds on /
3.2 Dockerfile
Create Dockerfile:
FROM python:3.12-slim
WORKDIR /app
COPY app/requirements.txt /app/
RUN pip install --no-cache-dir -r requirements.txt
COPY app/ /app/
ENV PORT=8080
EXPOSE 8080
CMD ["gunicorn", "--bind", "0.0.0.0:8080", "main:app"]
Expected outcome: – Container image that runs the Flask app on port 8080
3.3 Kubernetes manifests
Create k8s/deployment.yaml:
apiVersion: apps/v1
kind: Deployment
metadata:
name: hello
labels:
app: hello
spec:
replicas: 1
selector:
matchLabels:
app: hello
template:
metadata:
labels:
app: hello
spec:
containers:
- name: hello
image: hello:dev
ports:
- containerPort: 8080
env:
- name: TARGET
value: "Cloud Code for IntelliJ"
Create k8s/service.yaml:
apiVersion: v1
kind: Service
metadata:
name: hello
spec:
selector:
app: hello
ports:
- name: http
port: 8080
targetPort: 8080
protocol: TCP
Expected outcome: – Deployment and Service definitions that will run in Kubernetes
3.4 Skaffold configuration
Create skaffold.yaml:
apiVersion: skaffold/v4beta6
kind: Config
metadata:
name: hello
build:
artifacts:
- image: hello
docker:
dockerfile: Dockerfile
manifests:
rawYaml:
- k8s/deployment.yaml
- k8s/service.yaml
portForward:
- resourceType: service
resourceName: hello
port: 8080
localPort: 8080
Expected outcome:
– Skaffold can build the Docker image, apply manifests, and port-forward the Service to localhost:8080.
If your installed Skaffold version does not support
v4beta6, adjust theapiVersionto match your Skaffold version. Useskaffold fixto migrate configs when needed. Verify in Skaffold docs: https://skaffold.dev/docs/
Step 4: Open the project in IntelliJ and confirm Kubernetes context
- In IntelliJ: File → Open and open
cloudcode-intellij-lab/. - Ensure your Kubernetes context points to Minikube:
bash kubectl config current-contextIf needed:bash kubectl config use-context minikube
Expected outcome:
– IntelliJ has the project open
– kubectl points to Minikube
Step 5: Run the dev loop (Cloud Code + Skaffold)
You have two reliable ways to run. Use Option A if your Cloud Code UI matches; use Option B as a guaranteed fallback.
Option A (IDE-driven): Run Skaffold via Cloud Code run configuration
- In IntelliJ: Run → Edit Configurations
- Add a new configuration of the Cloud Code Kubernetes/Skaffold type (the exact name can vary; look for “Cloud Code” and “Kubernetes”).
- Point it at your
skaffold.yaml. - Choose a mode equivalent to Dev (continuous development).
Start the configuration.
Expected outcome: – You see Skaffold output in the IDE run console – A pod and service are created in the cluster
Verify in a terminal:
kubectl get deploy,po,svc
You should see resources named hello.
Option B (CLI fallback): Run Skaffold directly
From the project directory:
skaffold dev
Expected outcome:
– Skaffold builds hello image and deploys it
– Port-forward starts to localhost:8080 (based on portForward config)
Step 6: Validate the running service
In a new terminal, call the service:
curl http://localhost:8080/
Expected outcome:
Hello, Cloud Code for IntelliJ!
Step 7: Make a change and watch the redeploy
Edit app/main.py and change the greeting:
return f"Hello from Kubernetes, {target}!\n"
Save the file.
Expected outcome: – Skaffold detects the change – Image rebuild + redeploy happens automatically – The next curl returns updated output
Verify:
curl http://localhost:8080/
Expected outcome:
Hello from Kubernetes, Cloud Code for IntelliJ!
Validation
Use these checks to confirm everything is working:
-
Kubernetes resources exist:
bash kubectl get deploy hello kubectl get pods -l app=hello kubectl get svc hello -
Pod is healthy:
bash kubectl describe pod -l app=hello -
Logs show requests:
bash kubectl logs -l app=hello --tail=50 -
Endpoint responds:
bash curl http://localhost:8080/
Troubleshooting
Common issues and fixes:
Issue: kubectl points to the wrong cluster
- Symptom: resources don’t appear where you expect.
- Fix:
bash kubectl config get-contexts kubectl config use-context minikube
Issue: Docker daemon not running
- Symptom: Skaffold build fails with Docker connection errors.
- Fix: start Docker Desktop / Docker Engine and re-run
skaffold dev.
Issue: Image pull errors in Kubernetes
- Symptom: Pod stuck in
ImagePullBackOff. - Cause: Your cluster can’t access the built image.
- Fix: For Minikube, ensure Docker builds occur in an environment Minikube can see. One approach is to point your shell at Minikube’s Docker daemon:
bash eval $(minikube docker-env)Then rerun:bash skaffold dev(Exact approach depends on your OS and Minikube driver; verify Minikube docs.)
Issue: Port-forward fails because port is in use
- Symptom: “unable to listen on port 8080”.
- Fix: Change
localPortinskaffold.yamlto a free port (for example 18080), then curl that port.
Issue: Plugin UI doesn’t match instructions
- Symptom: You can’t find the exact Cloud Code menu.
- Fix: Use the CLI fallback (
skaffold dev) and still benefit from Cloud Code YAML assistance and IDE context. Also verify plugin docs for your version: https://cloud.google.com/code/docs/intellij
Cleanup
Stop the dev loop:
– If running in CLI: press Ctrl+C in the terminal running Skaffold.
– If running in IntelliJ: click the stop button in the Run tool window.
Delete Kubernetes resources (optional if Skaffold already cleaned them up, but safe to run):
kubectl delete service hello --ignore-not-found=true
kubectl delete deployment hello --ignore-not-found=true
Stop Minikube (optional):
minikube stop
If you want to remove the cluster entirely:
minikube delete
11. Best Practices
Architecture best practices
- Keep your runtime definitions in repo: Kubernetes manifests,
skaffold.yaml, Dockerfiles. - Use Skaffold profiles for environment-specific settings rather than copying files:
- Local profile (Minikube/kind)
- Remote profile (GKE + Artifact Registry)
- Keep a clear separation between:
- “inner loop” developer speed
- “outer loop” CI/CD governance and promotion
IAM/security best practices
- Prefer group-based IAM assignments and least privilege:
- Separate permissions for viewing clusters vs deploying to them.
- Use Kubernetes RBAC to restrict namespaces.
- Avoid using “project Owner” for development access.
Cost best practices
- Prefer local clusters whenever possible.
- Avoid provisioning cloud load balancers for development tests; use port-forward or shared ingress.
- Use Artifact Registry cleanup policies (verify current capabilities) and delete unused repos/images.
Performance best practices
- Optimize container builds:
- Use small base images and reduce layers.
- Cache dependencies effectively.
- Reduce redeploy time:
- Use Skaffold’s sync features when applicable (verify for your language/framework).
- Avoid rebuilding large images on every small code change.
Reliability best practices
- Treat manifests as production-grade:
- Use readiness and liveness probes
- Set resource requests/limits
- Validate changes in a staging-like cluster before production promotion.
Operations best practices
- Standardize naming:
- Kubernetes labels (
app,component,env,team) - Namespaces per environment/team
- Keep logs structured (JSON where practical) to reduce troubleshooting time.
- Add basic health endpoints early.
Governance/tagging/naming best practices
- Align with organizational policies:
- Artifact Registry repository naming conventions
- GKE cluster naming and location standards
- Use consistent label and annotation schemes for cost allocation and ownership.
12. Security Considerations
Identity and access model
Cloud Code for IntelliJ actions typically run as the developer’s identity:
– Google Cloud access via gcloud credentials and IAM
– Kubernetes access via kubeconfig and Kubernetes RBAC
Security implications: – A developer who can deploy to a cluster can potentially run arbitrary containers in their permitted namespaces. – Strong RBAC and policy enforcement are critical on shared clusters.
Encryption
- In transit:
- Kubernetes API uses TLS
- Artifact Registry endpoints use TLS
- At rest:
- Artifact Registry and most Google Cloud services encrypt at rest by default (verify service-specific encryption docs if you have CMEK requirements).
Network exposure
Common risks: – Exposing dev services with public load balancers unintentionally. – Allowing broad network egress from workloads.
Recommendations: – Use port-forward for local testing. – Use private clusters and controlled ingress for shared environments. – Apply NetworkPolicies (GKE Dataplane V2 / network policy options vary; verify for your cluster mode).
Secrets handling
Do not store secrets in: – Git repos – Kubernetes ConfigMaps – IDE run configurations
Use: – Secret Manager (Google Cloud) for managed secrets (verify integration patterns) – Kubernetes Secrets with appropriate encryption and RBAC, or external secret operators (verify your platform standard)
Audit/logging
- Use Google Cloud audit logs for:
- GKE API usage
- Artifact Registry access
- Cloud Build operations
- Use Kubernetes audit logs where appropriate (availability depends on cluster configuration; verify GKE audit logging features).
Compliance considerations
Cloud Code is a developer tool, but it can affect compliance because it influences: – Who can deploy what, where – How artifacts are built and stored – How changes are reviewed and promoted
For regulated environments: – Ensure production deploys go through CI/CD with approvals. – Use policy controls (for example, org policy constraints, Binary Authorization where applicable—verify current product fit for your environment).
Common security mistakes
- Using broad IAM roles (Owner/Editor) for convenience
- Sharing kubeconfig files or long-lived credentials
- Deploying to production clusters from developer laptops
- Allowing unrestricted image sources (pulling from public registries without scanning)
Secure deployment recommendations
- Use Artifact Registry with restricted write access.
- Enforce image provenance/scanning in CI.
- Use separate projects/clusters for dev/staging/prod.
- Use namespaces + RBAC + quotas to isolate teams.
13. Limitations and Gotchas
- It’s an IDE plugin, not a managed service: reliability depends on local machine setup (Docker, kubectl, Skaffold versions).
- Version compatibility: IntelliJ versions, plugin versions, and tool versions can drift. Pin versions where practical and document the supported stack.
- Kubernetes context mistakes: It’s easy to deploy to the wrong cluster/namespace if contexts are not managed carefully.
- Remote cluster iteration is slower and costlier: Latency and paid resources can make dev loops painful on shared clusters.
- GKE authentication requirements: Accessing GKE commonly requires the correct auth plugin and kubeconfig setup. If cluster credentials expire or plugins mismatch, you’ll see confusing errors.
- Skaffold config API versions: Skaffold periodically changes config schema versions; use
skaffold fixto migrate and validate. - Windows/WSL nuances: Docker and filesystem event propagation can affect rebuild triggers and performance. Verify recommended setups for your OS and IDE.
- Observability cost surprises: Logging everything at debug level in shared environments can increase logging ingestion costs.
14. Comparison with Alternatives
Cloud Code for IntelliJ is one option in a broader ecosystem of cloud developer tools.
Key alternatives
- Cloud Code for VS Code (Google Cloud): Similar intent, different IDE ecosystem.
- Cloud Shell Editor / Cloud-based development environments: Shift tooling to the cloud; may reduce workstation setup burden (verify current Google Cloud offerings and Cloud Code support).
- JetBrains Kubernetes plugin + manual Skaffold: Use IDE Kubernetes features without Google’s Cloud Code layer.
- Pure CLI workflow:
skaffold,kubectl,helm,kustomizewithout IDE integration. - Other cloud IDE toolkits:
- AWS Toolkit for JetBrains
- Azure Toolkit for IntelliJ/JetBrains
Comparison table
| Option | Best For | Strengths | Weaknesses | When to Choose |
|---|---|---|---|---|
| Cloud Code for IntelliJ (Google Cloud) | IntelliJ teams building Kubernetes apps (often for GKE) | Skaffold-centric inner loop; Kubernetes-focused; integrates with Google Cloud workflows | Depends on local setup; plugin/UI can change; primarily Kubernetes-oriented | You want IntelliJ + Kubernetes + repeatable Skaffold-based loops |
| Cloud Code for VS Code (Google Cloud) | VS Code teams | Similar workflows in VS Code ecosystem | Not IntelliJ; different IDE experience | Your org standardizes on VS Code |
| JetBrains Kubernetes plugin + CLI tools | Teams wanting minimal Google-specific tooling | Strong IDE support; flexible | Less “guided” Google Cloud path; you own the workflow glue | You already have a mature Kubernetes toolchain |
| Skaffold + kubectl only (no IDE integration) | Terminal-first engineers | Most portable; easy to automate | More context switching; steeper learning curve | You prioritize tool portability over IDE features |
| Cloud-based dev environments (verify current offerings) | Regulated environments or standardized dev machines | Consistent tooling; reduced workstation variance | Requires platform investment; may affect performance/latency | You want centrally managed dev environments |
15. Real-World Example
Enterprise example (platform + compliance)
- Problem: A financial services company has hundreds of microservices on GKE. Developers use inconsistent scripts, and security requires auditable, least-privilege access.
- Proposed architecture:
- Standard repo templates include
skaffold.yaml, Kubernetes manifests, and policy-checked defaults. - Dev clusters per business unit; staging shared; production locked behind CI/CD approvals.
- Artifact Registry for images; Cloud Build for reproducible builds; centralized logging/monitoring.
- Why Cloud Code for IntelliJ was chosen:
- Many teams use IntelliJ.
- Cloud Code aligns developer workflows to Skaffold and Kubernetes manifests, reducing drift.
- Integrates cleanly with IAM and existing RBAC controls.
- Expected outcomes:
- Faster onboarding and fewer environment-specific scripts
- More consistent build/deploy processes
- Easier audits due to standardized configs and controlled access
Startup/small-team example (speed + simplicity)
- Problem: A startup runs a few services on GKE and wants faster iteration without building a full internal platform.
- Proposed architecture:
- Local dev via Minikube + Cloud Code + Skaffold
- One shared staging cluster on GKE
- Artifact Registry for images
- Why Cloud Code for IntelliJ was chosen:
- Developers already use IntelliJ.
- Quick inner-loop wins without adopting a heavy platform toolchain.
- Expected outcomes:
- Shorter feedback loops
- Less time spent on Kubernetes command sequences
- A smoother path to production-like deployment patterns
16. FAQ
1) Is Cloud Code for IntelliJ a managed Google Cloud service?
No. Cloud Code for IntelliJ is an IDE plugin installed locally. Any cloud costs come from the Google Cloud services you use (GKE, Artifact Registry, Cloud Build, etc.).
2) Do I need a Google Cloud project to use Cloud Code for IntelliJ?
Not strictly for local-only Kubernetes development, but you typically need a project for real Google Cloud workflows (GKE clusters, Artifact Registry, IAM policies).
3) What is the main tool Cloud Code uses under the hood?
Cloud Code commonly relies on Skaffold for build/deploy dev loops and on kubectl for Kubernetes interaction.
4) Can I use Cloud Code for IntelliJ with a local Kubernetes cluster?
Yes. Local clusters like Minikube or kind are common for low-cost inner-loop development. You select the target via your kubeconfig context.
5) Can I use it with GKE?
Yes, as long as your kubeconfig is configured for the GKE cluster and your identity has appropriate IAM and Kubernetes RBAC permissions.
6) Does Cloud Code for IntelliJ deploy to production?
It can deploy to any cluster you have access to, but production deployments should typically be done via CI/CD with approvals, policy checks, and audit controls.
7) Does Cloud Code for IntelliJ support debugging in Kubernetes?
Cloud Code is designed to help with Kubernetes development and troubleshooting, and may support debugging workflows depending on language/runtime and configuration. Verify current debugging support for your stack in the official docs: https://cloud.google.com/code/docs/intellij
8) Is Cloud Code for IntelliJ only for Kubernetes?
Cloud Code is primarily Kubernetes-centric. If your workloads are not containerized or not running on Kubernetes, the value may be limited.
9) Do I have to use Docker?
Many Skaffold workflows use Docker, but Skaffold supports multiple builders. Your actual setup depends on your chosen build configuration and platform. Verify supported builders in Skaffold docs.
10) How do I avoid deploying to the wrong cluster?
- Name contexts clearly
- Use separate kubeconfig files per environment when needed
- Add strong RBAC boundaries between dev/staging/prod
- Consider policy controls that prevent dev identities from accessing production clusters
11) What are the biggest cost risks when using Cloud Code with GKE?
Leaving clusters running, accidentally creating load balancers, generating large volumes of logs, and frequently pushing large images to a registry.
12) Is Artifact Registry required?
Not for local-only development. For GKE deployments, a registry like Artifact Registry is the standard place to push images.
13) Can my CI pipeline reuse my skaffold.yaml?
Often yes, at least partially. Many teams align local and CI workflows around the same Skaffold config, with profiles for CI vs local. Validate carefully to avoid environment-specific assumptions.
14) What’s the difference between Cloud Code and Cloud Build?
- Cloud Code: IDE plugin to help developers run workflows.
- Cloud Build: managed Google Cloud service to execute builds in the cloud. They can be used together when Skaffold is configured to build using Cloud Build.
15) Where should I look for the most accurate, up-to-date feature list?
The official Cloud Code for IntelliJ documentation: https://cloud.google.com/code/docs/intellij and the plugin release notes in JetBrains Marketplace (verify the current listing for your IDE version).
17. Top Online Resources to Learn Cloud Code for IntelliJ
| Resource Type | Name | Why It Is Useful |
|---|---|---|
| Official documentation | Cloud Code for IntelliJ docs — https://cloud.google.com/code/docs/intellij | Primary source for supported features, setup, and workflows |
| Official SDK docs | Google Cloud CLI install — https://cloud.google.com/sdk/docs/install | Required for authenticating and interacting with Google Cloud projects |
| Official Kubernetes docs | kubectl install — https://kubernetes.io/docs/tasks/tools/ | Ensures your Kubernetes CLI is correctly installed |
| Official tool docs | Skaffold documentation — https://skaffold.dev/docs/ | Cloud Code workflows commonly rely on Skaffold |
| Official pricing | Google Cloud Pricing — https://cloud.google.com/pricing | Understand how underlying services are billed |
| Official calculator | Pricing Calculator — https://cloud.google.com/products/calculator | Build a region- and usage-specific cost estimate |
| Official service docs | GKE documentation — https://cloud.google.com/kubernetes-engine/docs | Production target for many Cloud Code users |
| Official service docs | Artifact Registry documentation — https://cloud.google.com/artifact-registry/docs | Recommended container image registry for Google Cloud |
| Official service docs | Cloud Build documentation — https://cloud.google.com/build/docs | Common CI build service used with container workflows |
18. Training and Certification Providers
| Institute | Suitable Audience | Likely Learning Focus | Mode | Website URL |
|---|---|---|---|---|
| DevOpsSchool.com | DevOps engineers, SREs, developers | DevOps tooling, Kubernetes, CI/CD, cloud fundamentals | Check website | https://www.devopsschool.com/ |
| ScmGalaxy.com | Beginners to intermediate engineers | SCM, DevOps practices, tooling labs | Check website | https://www.scmgalaxy.com/ |
| CLoudOpsNow.in | Cloud/operations teams | Cloud ops, automation, operational readiness | Check website | https://www.cloudopsnow.in/ |
| SreSchool.com | SREs, platform engineers | Reliability engineering, monitoring, incident response | Check website | https://www.sreschool.com/ |
| AiOpsSchool.com | Ops and engineering teams | AIOps concepts, observability, automation | Check website | https://www.aiopsschool.com/ |
19. Top Trainers
| Platform/Site | Likely Specialization | Suitable Audience | Website URL |
|---|---|---|---|
| RajeshKumar.xyz | DevOps/Kubernetes/cloud training content (verify current offerings) | Beginners to advanced | https://rajeshkumar.xyz/ |
| devopstrainer.in | DevOps and automation training platform (verify current offerings) | DevOps engineers, developers | https://www.devopstrainer.in/ |
| devopsfreelancer.com | Freelance DevOps help/training resources (verify current offerings) | Small teams, startups | https://www.devopsfreelancer.com/ |
| devopssupport.in | DevOps support/training resources (verify current offerings) | Ops teams and engineers | https://www.devopssupport.in/ |
20. Top Consulting Companies
| Company Name | Likely Service Area | Where They May Help | Consulting Use Case Examples | Website URL |
|---|---|---|---|---|
| cotocus.com | Cloud/DevOps consulting (verify exact services) | Architecture, DevOps implementation, ops support | Kubernetes platform setup, CI/CD design, cloud migration planning | https://cotocus.com/ |
| DevOpsSchool.com | DevOps consulting and training (verify exact services) | DevOps transformations, tooling, enablement | Standardizing developer workflows, Kubernetes adoption programs | https://www.devopsschool.com/ |
| DEVOPSCONSULTING.IN | DevOps consulting (verify exact services) | Implementation and advisory | Pipeline automation, containerization strategy, operational readiness | https://www.devopsconsulting.in/ |
21. Career and Learning Roadmap
What to learn before Cloud Code for IntelliJ
- Container basics: images, Dockerfile, registries
- Kubernetes fundamentals: Pods, Deployments, Services, Ingress, ConfigMaps/Secrets
- kubectl basics and kubeconfig contexts
- Basic Google Cloud concepts: projects, IAM, APIs
What to learn after Cloud Code for IntelliJ
- GKE operations: cluster modes, node pools, upgrades, autoscaling
- Artifact Registry management and IAM hardening
- CI/CD for Kubernetes (Cloud Build, GitHub Actions, GitLab CI, etc.)
- Policy and governance:
- Admission controls and policy-as-code (verify what your org uses)
- Image scanning and provenance controls
- Observability:
- Cloud Logging/Monitoring dashboards and alerting
- SLOs and error budgets (SRE practices)
Job roles that use it
- Cloud engineers building on Kubernetes
- Platform engineers providing developer tooling
- DevOps engineers standardizing deployment workflows
- SREs supporting dev/staging cluster operations
- Application developers working on containerized services
Certification path (if available)
Cloud Code itself is not typically a certification topic, but it supports skills used in Google Cloud certifications. Consider (verify current certification catalog): – Associate Cloud Engineer – Professional Cloud Developer – Professional Cloud DevOps Engineer
Official certification overview: https://cloud.google.com/learn/certification
Project ideas for practice
- Add a second microservice and use Skaffold to deploy both
- Introduce environment profiles (local vs GKE)
- Add readiness/liveness probes and resource limits
- Push images to Artifact Registry and deploy to a GKE dev namespace
- Add basic CI: build + unit tests + container build + manifest validation
22. Glossary
- Artifact Registry: Google Cloud service for storing and managing build artifacts such as container images.
- Cloud Build: Google Cloud managed build service for running builds and CI steps.
- Cloud Code for IntelliJ: Google Cloud IDE plugin for IntelliJ-based IDEs focusing on Kubernetes/cloud-native development workflows.
- Context (kubeconfig context): Named cluster/user/namespace combination used by
kubectlto decide where commands are executed. - GKE (Google Kubernetes Engine): Managed Kubernetes service on Google Cloud.
- IAM (Identity and Access Management): Google Cloud authorization system controlling who can do what on which resources.
- Inner loop: Fast developer cycle of edit → build → deploy → test.
- Kubernetes manifests: YAML files declaring desired state for Kubernetes resources (Deployments, Services, etc.).
- kubectl: CLI for interacting with the Kubernetes API.
- Minikube: Tool for running a local Kubernetes cluster.
- Namespace: Kubernetes mechanism for isolating resources within a cluster.
- Port-forward: Technique to forward a local port to a Kubernetes pod or service for testing without external exposure.
- RBAC (Role-Based Access Control): Kubernetes authorization mechanism controlling actions within the cluster.
- Skaffold: Tool that automates building, pushing, and deploying applications to Kubernetes during development.
- Workload: A running application component in Kubernetes (for example, a Deployment managing pods).
23. Summary
Cloud Code for IntelliJ (Google Cloud, Application development) is an IDE plugin that brings Kubernetes-focused development workflows into IntelliJ. It typically works by orchestrating standard tools like Skaffold and kubectl so developers can build, deploy, and iterate on containerized applications more quickly and consistently.
It matters because it reduces the friction of Kubernetes development while reinforcing repo-based, repeatable configurations that can align with CI/CD and production patterns. Cloud Code itself usually has no direct cost, but the workflows can create costs in GKE, Artifact Registry, Cloud Build, logging, and networking—so use local clusters and avoid unnecessary cloud resources during development.
Use Cloud Code for IntelliJ when your team builds Kubernetes workloads (often targeting GKE) and wants a standardized, IDE-first developer loop. For the next learning step, deepen your Skaffold and Kubernetes knowledge and then map your local workflow to GKE with Artifact Registry and CI/CD using official docs: – Cloud Code for IntelliJ: https://cloud.google.com/code/docs/intellij – Skaffold: https://skaffold.dev/docs/ – GKE: https://cloud.google.com/kubernetes-engine/docs