Dev Containers Setup: India Devs (2026)

Learn how Indian developers at companies like TCS & Razorpay use Dev Containers with Docker to create consistent, efficient coding environments. Step-by-step setup guide for VS Code, advanced configs, and solutions for common hurdles.

LB
UnboxCareer Team
Editorial · Free courses curator
March 27, 20265 min read
Dev Containers Setup: India Devs (2026)

For Indian developers, especially those navigating the competitive landscape of TCS, Infosys, or ambitious startups like Razorpay and Freshworks, efficiency is currency. Setting up a new project, onboarding a team member, or ensuring your code runs the same everywhere can eat up precious hours. What if your entire development environment—tools, dependencies, runtime—could be packaged and launched with a single click? That’s the promise of Dev Containers, a game-changing workflow that’s moving from Silicon Valley buzz to Bengaluru best practice.

What Are Dev Containers & Why Should You Care?

In simple terms, a Dev Container (Development Container) is a pre-configured, containerized environment for writing code. It uses Docker to create a consistent, isolated workspace that includes everything your project needs: the correct programming language version, specific libraries, database clients, linters, and extensions. Think of it as a perfectly set up virtual machine, but faster, lighter, and defined by code.

For Indian developers, the advantages are massive:

  • Eliminates "It Works on My Machine" Syndrome: Whether your teammate is on Windows in Pune, macOS in Gurgaon, or Linux in Bangalore, the Dev Container ensures the environment is identical. This is a lifesaver for remote teams and open-source contributors.
  • Speeds Up Onboarding: New joiners at companies like Wipro or HCL can skip days of environment setup. Cloning a repo and opening it in a Dev Container gets them coding in minutes, not days.
  • Simplifies Multi-Project Management: Easily switch between a legacy .NET project and a modern Node.js microservice for Swiggy without version conflicts on your local machine.
  • Leverages Cloud & GitHub Codespaces: Your configured environment can run seamlessly in the cloud via GitHub Codespaces, turning a Chromebook or tablet into a powerful dev workstation—ideal for students or developers with limited hardware.

Core Components: The devcontainer.json File

The heart of any Dev Container setup is a .devcontainer/devcontainer.json file in your project. This configuration file tells your editor (like VS Code) exactly how to build and configure the container. Let's break down its key parts.

The Base Image

The "image" or "build" property defines the starting point. You can use a lightweight official image or a custom one.

{
    "image": "mcr.microsoft.com/vscode/devcontainers/python:3.10"
}

This pulls a Microsoft-maintained image with Python 3.10, git, zsh, and common utilities pre-installed.

Installing Tools & Dependencies

Use the "features" property to add common stacks or tools without writing complex Dockerfile commands. It's like installing apt-get packages on steroids.

"features": {
    "ghcr.io/devcontainers/features/docker-in-docker:1": {},
    "ghcr.io/devcontainers/features/node:1": {}
}

This adds Docker CLI inside the container (for building images) and Node.js, perfect for a full-stack developer.

VS Code Extensions

Automatically install the necessary VS Code extensions for everyone in the project.

"customizations": {
    "vscode": {
        "extensions": [
            "ms-python.python",
            "dbaeumer.vscode-eslint",
            "ritwickdey.LiveServer"
        ]
    }
}

No more sharing lists of extension IDs over Slack; they're part of the project setup.

Step-by-Step Setup for VS Code

Ready to try it? Here’s a simple guide to containerize a Node.js project.

  1. Install Prerequisites: Ensure Docker (Docker Desktop for Windows/Mac or Docker Engine for Linux) and Visual Studio Code are installed. Then, install the "Dev Containers" extension from the VS Code marketplace.
  2. Open Your Project Folder: Open your existing project code folder in VS Code.
  3. Generate Configuration: Press F1 (or Cmd/Ctrl + Shift + P) to open the command palette. Type and select "Dev Containers: Add Dev Container Configuration Files...".
  4. Choose a Template: VS Code will suggest templates. For a Node.js project, select "Node.js" and a specific version (e.g., Node.js 18). This creates the .devcontainer folder with a devcontainer.json file and a Dockerfile.
  5. Reopen in Container: A notification will pop up. Click "Reopen in Container". VS Code will build the Docker image (this may take a few minutes on first run) and relaunch with your project running inside the container.

You’re now coding inside a pristine, isolated environment! The terminal you open in VS Code is inside the container, and all commands run in that context.

Advanced Configurations for Real-World Projects

Basic setups get you far, but real-world projects at companies like Zerodha or Paytm have complex needs.

Connecting to Databases and Services

Your container can talk to services running on your local machine (host) or in other containers. Use "forwardPorts" and "runArgs".

"forwardPorts": [5432, 3000],
"runArgs": ["--env-file", ".env.container"]

This forwards the container's port 5432 (PostgreSQL) and 3000 (app server) to your host and injects environment variables from a file.

Using Docker Compose

For multi-service apps (e.g., a Node.js app + PostgreSQL + Redis), define a docker-compose.yml file and reference it.

"dockerComposeFile": "docker-compose.yml",
"service": "app",
"workspaceFolder": "/workspace"

This spins up the entire stack defined in the compose file and attaches VS Code to the "app" service container.

Post-Creation Scripts

Automate tasks after the container is built, like installing global npm packages or running database migrations.

"postCreateCommand": "npm install && npm run db:migrate"

Overcoming Common Hurdles for Indian Devs

While powerful, you might hit some roadblocks, especially with typical Indian internet and corporate setups.

  • Slow First Build Due to Docker Image Pulls: Use a local Docker registry mirror or pre-cache base images on your machine during off-hours. For teams, consider hosting common base images on an internal AWS or Azure Container Registry closer to your office.
  • Corporate Proxy & Firewall Issues: Docker needs to talk to the internet. You may need to configure Docker's proxy settings (~/.docker/config.json) with your company's proxy details. This is common in Accenture or Infosys development centers.
  • Performance on Windows: Use WSL 2 (Windows Subsystem for Linux) as the backend for Docker Desktop. This significantly improves file I/O performance when working with code mounted from your Windows drive.
  • Learning Curve: Start small. Containerize a simple personal project first. Follow tutorials by Indian creators like CodeWithHarry or Jenny's Lectures if you prefer learning in Hindi or with local context.

Next Steps

Dev Containers represent a significant shift towards more reliable, collaborative, and efficient software development. They are particularly valuable in India's diverse and fast-paced tech ecosystem, where teams are often distributed and projects varied. Start by adding a Dev Container to your next personal project on GitHub. To deepen your Docker fundamentals, which are essential for this, explore free Docker courses on LearnBuddy. If you're building towards a DevOps or backend role at companies like Flipkart or Zomato, mastering these containerization skills is a powerful addition to your resume. You can also browse all development tool courses to strengthen your overall toolkit.

Keep learning on UnboxCareer

Explore free courses, certificates, and career roadmaps curated for Indian students.