Access Requirements
Configure your firewall and network security groups to allow outbound connections to these endpoints for Gitpod to function properly.
Enterprise Runner Proxy Support: Enterprise runners support HTTP proxy configuration for environments behind corporate firewalls. When using a proxy, ensure that .internal
, 169.254.0.0/16
, app.gitpod.io
, and .amazonaws.com
are added to the NO_PROXY list. See the Enterprise Runner setup guide for detailed proxy configuration.
Gitpod Services
Management Plane
Controls Runner and Environment orchestration by communicating with Gitpod’s control plane.
https://app.gitpod.io
Gateway API Server
Not required for Enterprise runners - Enterprise runners use direct connectivity and do not require gateway endpoints.
Provides secure connectivity between standard runners and Gitpod services through encrypted tunnels. Runners automatically select the optimal gateway (EU or US) based on latency.
HTTPS:
https://us01.gitpod.dev:8443
https://*.us01.gitpod.dev:443
https://eu01.gitpod.dev:8443
https://*.eu01.gitpod.dev:443
UDP:
lighthouse.us01.gitpod.dev:4242
lighthouse.eu01.gitpod.dev:4242
VS Code
Required for VS Code IDE functionality including server downloads and extension marketplace access.
https://update.code.visualstudio.com/api/commits/stable/server-linux-x64-web
https://update.code.visualstudio.com/api/commits/stable/server-linux-arm64-web
https://update.code.visualstudio.com/commit:*/server-linux-x64/stable
https://update.code.visualstudio.com/commit:*/server-linux-arm64/stable
https://*.vscode-unpkg.net
https://marketplace.visualstudio.com
https://*.gallerycdn.vsassets.io
JetBrains
Required for JetBrains IDE functionality including IDE downloads and services.
https://download.jetbrains.com
https://download-cf.jetbrains.com
https://download-cdn.jetbrains.com
https://data.services.jetbrains.com
Release Artifacts
Downloads Gitpod updates, CLI binaries, and agent components necessary for Runner and Environment operation.
https://releases.gitpod.io/ec2/stable/manifest.json
https://releases.gitpod.io/ec2/stable/supervisor-amd64.xz
https://releases.gitpod.io/ec2/stable/gitpod-ec2-runner.json
https://releases.gitpod.io/ec2/stable/gitpod-ec2-runner-enterprise.json
https://releases.gitpod.io/ec2/stable/gitpod-ec2-multi-org-runner.json
https://releases.gitpod.io/cli/stable/manifest.json
https://releases.gitpod.io/cli/stable/gitpod-linux-amd64
https://releases.gitpod.io/cli/stable/gitpod-linux-amd64.exe
https://releases.gitpod.io/cli/stable/gitpod-linux-amd64.sha256
https://releases.gitpod.io/cli/stable/gitpod-linux-arm64
https://releases.gitpod.io/cli/stable/gitpod-linux-arm64.sha256
https://releases.gitpod.io/vscode/releases/*/vscode-remote.vsix
https://releases.gitpod.io/vscode/releases/*/vscode-agent-amd64
https://releases.gitpod.io/vscode/releases/*/vscode-agent-arm64
https://releases.gitpod.io/jetbrains/releases/*/jetbrains-agent-amd64
https://releases.gitpod.io/jetbrains/releases/*/jetbrains-agent-arm64
Container Registries
Downloads container images used by development environments and Runner infrastructure.
Gitpod default devcontainer image:
https://mcr.microsoft.com/devcontainers/base:ubuntu-24.04
AWS Public ECR (Runner images):
https://public.ecr.aws
Your Infrastructure
SCM and SSO Providers
Access to your source code repositories and authentication providers for user login and code access.
Configure access to your specific providers (complete HTTPS URLs):
- GitHub, GitLab, Bitbucket URLs
- SSO provider URLs (Okta, Azure AD, etc.)
Optional Services
Prometheus Remote Write
Optional metrics collection endpoint for monitoring Runner and Environment performance.
- Your metrics endpoint URL (HTTPS 443)
Additional Container Registries
Optional access to custom container registries for pulling private or organization-specific images.
Common registries (allow those you use):
https://index.docker.io
https://registry-1.docker.io
https://auth.docker.io
https://ghcr.io
- Your private registry URLs (HTTPS 443)
AWS Services
Replace <region>
with your AWS region and <account-id>
with your AWS Account ID.
Instance Metadata
EC2 instance configuration and metadata required for AWS service integration.
- Endpoint:
169.254.169.254
- Protocol: HTTP (80)
Regional APIs
AWS service communication for EC2 management, container registry access, and other AWS operations.
https://ec2.<region>.amazonaws.com
https://<account-id>.dkr.ecr.<region>.amazonaws.com
https://s3.<region>.amazonaws.com
https://ssm.<region>.amazonaws.com
https://sts.<region>.amazonaws.com
https://dynamodb.<region>.amazonaws.com
https://cloudformation.<region>.amazonaws.com
https://secretsmanager.<region>.amazonaws.com
https://logs.<region>.amazonaws.com
(optional)https://elasticloadbalancing.<region>.amazonaws.com
(Enterprise runners only)https://acm.<region>.amazonaws.com
(Enterprise runners only)
AMI Requirements
Both Standard and Enterprise AWS runners require access to specific AMIs. If your AWS Organization restricts AMI access, ensure your AWS account can launch EC2 instances from these AMIs.
Required AMIs
AMI Name | Owner Account ID | Owner | Purpose |
---|---|---|---|
bottlerocket-aws-ecs-1-x86_64 | 149721548608 | Amazon | Runner service |
gitpod/images/gitpod-next/ec2-runner-ami-* | 995913728426 | Gitpod | Development environments |
Allowlisting Recommendations
Gitpod updates AMIs regularly as part of our continuous security and feature updates. We recommend allowing access by Owner Account ID rather than specific AMI ID when implementing allowlisting policies.
Why Use Owner Account ID
- Automatic updates: New AMI versions are automatically accessible without policy updates
- Security: Ensures you always have access to the latest security patches
- Maintenance: Reduces administrative overhead of managing specific AMI IDs
Implementation
When configuring your AWS Organization’s AMI access policies:
- Allow by Owner Account ID: Use the Owner Account IDs from the table above
- Include both accounts: Both Amazon (
149721548608
) and Gitpod (995913728426
) accounts are required - Test access: Verify your Runner deployment account can launch instances from these AMIs
Testing AMI Access
To verify AMI access is working correctly:
- Test AMI access by attempting to launch a test instance from the required AMIs in your target region
- Check deployment logs during Runner setup for any AMI access errors
- Monitor CloudFormation events for AMI-related failures during stack deployment
If you encounter AMI access issues during Runner deployment, contact your AWS administrator to review and update your organization’s AMI access policies.
SSH Domain Aliases
Gitpod uses domain aliases like <workspace-id>.gitpod.remote
and <workspace-id>.gitpod.environment
for SSH connectivity to workspaces.
Understanding Domain Aliases
These domain names are not actual internet domains but SSH configuration aliases that map to EC2 instance IP addresses:
- Virtual domains:
gitpod.remote
andgitpod.environment
are virtual domains that exist only in your SSH configuration - Automatic mapping: The Gitpod CLI updates your SSH config with the actual instance IP addresses
- User-friendly access: Provides clean identifiers instead of complex AWS hostnames like
ec2-18-184-202-80.region.compute.amazonaws.com
How They Work
- When you connect to a workspace via SSH or VS Code, you use the alias (e.g.,
abc123.gitpod.remote
) - Your SSH client resolves this to the actual IP address based on your SSH configuration
- The Gitpod CLI manages these mappings automatically, fetching the current IPs from the Gitpod API
These aliases simplify connection management while hiding the complexity of the underlying dynamic cloud infrastructure.