
Building Your Own Cloud IDE: A Cloud9 Alternative Using AWS Resources
With AWS Cloud9's transition away from new customer access, developers need reliable alternatives for temporary developer environments based in AWS. While several options exist, we’ll show you how to create your own Cloud9-like environment using AWS resources and the open source version of VS Code.
Published May 16, 2025
With AWS Cloud9's transition away from new customer access (as of July 25, 2024), developers need reliable alternatives for cloud-based development environments. While several options exist, we’ll show you how to create your own Cloud9-like environment using AWS resources and the popular code-server project.
1. Cost Control: Full control over instance types and running hours
2. Customization: Configure the environment to your exact needs
3. Infrastructure as Code: Automate environment creation
4. No Service Lock-in: Freedom to modify as needs change
Before exploring our solution, it's worth noting that developers have several approaches available for cloud-based development. These include:
- Local IDE with AWS Toolkit Integration
- Requires local machine setup
- Uses AWS Toolkit integration
- Suitable for teams with existing development environments
- Managed Cloud Development Environments
- Various options available in the market
- Different pricing models and features
- May have limited AWS integration capabilities
- Integrated with AWS services
- Additional features for ML workloads
- Comprehensive development environment
We'll create a solution that provides:
- Browser-based open source VS Code environment
- Minimal local setup
- Persistent EBS storage
- Secure access through AWS Systems Manager
- Infrastructure as Code deployment using CloudFormation
This solution is ideal for temporary projects, prototyping, workshops and training, combining the flexibility of VS Code with the security and integration capabilities previously available in Cloud9, while giving you complete control over the environment and costs.

Our solution consists of:
1. EC2 instance running code-server
2. EBS volume for persistent storage
3. IAM roles for secure access
4. Systems Manager for secure connectivity
Before deploying this solution, ensure you have:
1. AWS CLI installed and configured with appropriate permissions
2. AWS Session Manager Plugin installed locally
3. Permissions to create:
- EC2 instances
- IAM roles
- CloudFormation stacks
- Systems Manager resources
Important Networking Considerations
The EC2 instance is provided with internet access to:
- Download and install packages
- Access code-server updates
- Pull from git repositories
- Download VS Code extensions
Default VPC Scenario (VPCId and SubnetId parameters empty)
- Instance launches in the default VPC
- Uses default subnet
- Uses default security group
- Instance receives a public IP automatically
- Internet connectivity available by default
Custom VPC Scenario (VPCId and SubnetId parameters provided)
- Subnet must be a public subnet (has route to Internet Gateway)
- Instance does NOT receive a public IP
- Security group is created automatically
- All access is through Systems Manager (no inbound ports needed)
2. Deploy using AWS CLI:
3. Get the access information from the stack output:
1. Use the command provided in the Cloudformation stack output to start port forwarding
2. Access your IDE at http://localhost:8080
3. Login to the VS Code interface using the password retrieved from SSM Parameter Store
Important: When working in the IDE, use the
/home/workspace/environment
directory for your projects. Files stored in this location persist across instance restarts and are automatically backed up to the attached EBS volume. Files saved in other locations may be lost when the instance stops or restarts.Primary costs include:
- EC2 instance hours (Free for t3.micro or ~$15-20/month for t3.small)
- EBS storage (~$3/month for 30GB)
- Data transfer (minimal for most use cases)
- EC2 instance with minimum required permissions to your AWS account
- No inbound ports required, IAM role-based access
- AWS Systems Manager for access
- Password protection
- Encrypted storage and communications
- Implement automatic updates for
code-server
components - Add automated instance start/stop scheduling for cost optimization
- Enable built-in collaboration features
- Configure pre-installed AWS SDK
These enhancements can be implemented based on your team's specific needs and priorities, making your cloud IDE environment more robust and feature-rich over time.
Building your own Cloud9-like environment provides control over your development environment while maintaining security and cost efficiency. This solution serves as a building block that you can customize based on your specific needs.