Skip to main content

Prerequisites

This page outlines the requirements for deploying AI/Run CodeMie On VM on GCP. Ensure all prerequisites are met before proceeding.

GCP Account Requirements

Required Access and Permissions

  • Active GCP Project with sufficient quota for the required resources
  • The operator account must have the following roles or equivalent permissions:
    • roles/iap.tunnelResourceAccessor — SSH access to the VM via IAP
    • roles/secretmanager.secretAccessor — fetch SSH key from Secret Manager
    • Permissions to create: GCE VM, GCS bucket, Cloud KMS key, Cloud DNS private zone, VPC firewall rules

Quota Requirements

Verify sufficient quota for:

ResourceCount
n2-highmem-4 VM1
GCS Bucket1
Cloud KMS Key1
Cloud DNS Private Zone1 (optional)

Deployment Machine Tools

The following tools must be installed on the machine where you run ./deploy.sh:

ToolVersionPurpose
Terraform1.15.xInfrastructure provisioning
gcloud CLIlatestGCP authentication and management
jqlatestJSON parsing
openssllatestSecret generation
envsubstlatestTemplate rendering

Enterprise profile only:

ToolVersionPurpose
nsclatestNATS key generation

Verify Installation

terraform version    # Should show 1.15.x
gcloud version
jq --version
openssl version
envsubst --version

GCP Container Registry Access

CodeMie container images are hosted on europe-west3-docker.pkg.dev. You need a GCP service account key file (key.json) with read access to the registry.

Obtaining key.json

Contact your CodeMie administrator or EPAM delivery team to obtain the key.json file for registry access.

GCP Authentication

Authenticate before running the deployment:

gcloud auth application-default login

# Verify active project
gcloud config get-value project

Repository Access

Clone the deployment repository:

git clone https://gitbud.epam.com/epm-cdme/codemie-on-vm.git
cd codemie-on-vm

The repository structure:

DirectoryPurpose
compose/Docker Compose files and service configuration
deploy.shDeployment script
destroy.shDestroy script
terraform/gcp/remote-backend/GCS bucket for Terraform state
terraform/gcp/platform/VM, GCS bucket, KMS key, DNS, firewall

Next Steps

After verifying all prerequisites, review the Architecture to understand what will be deployed.