devcontainer-workflow

Provision DevContainer environments with non-root users and multi-stage Dockerfiles.

8|Updated Nov 4, 2025
One-click install
npx skills add https://github.com/ilude/claude-code-config --skill devcontainer-workflow
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: devcontainer-workflow
Source: https://github.com/ilude/claude-code-config/tree/main/skills/devcontainer-workflow
Command: npx skills add https://github.com/ilude/claude-code-config --skill devcontainer-workflow

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill guides DevContainer setups for consistent development environments with Docker, non-root users, and multi-stage pipelines.

Core Features & Use Cases

  • DevContainer structure: .devcontainer/, Dockerfile, postCreateCommand integration.
  • Non-root user security: creating vscode user and permissions.
  • Environment management: env vars, .env templates, and VS Code settings.

Quick Start

Add a .devcontainer/ with devcontainer.json and a multi-stage Dockerfile; open the project in VS Code with Remote-Containers.

Frequently Asked Questions about devcontainer-workflow

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I set up a DevContainer for consistent development environments across my team?

DevContainers use a .devcontainer/ folder with devcontainer.json and Dockerfile to provision identical development environments. Add these files to your repository, open the project in VS Code with the Remote-Containers extension, and the container builds automatically with all dependencies and configurations applied consistently across local and CI contexts.

Can I run a non-root user inside a Docker container for development?

Yes. DevContainers support creating a non-root user (like vscode) with proper permissions for mounted volumes and shell access. Configure the user in your multi-stage Dockerfile and set ownership via postCreateCommand, ensuring secure development workflows without requiring root privileges.

How do I manage environment variables and .env files in a DevContainer?

Load environment variables through .env files and VS Code settings within your DevContainer configuration. Use postCreateCommand to source .env templates and configure shell initialization, enabling reproducible environment setup that persists across container rebuilds.

Does DevContainer support Docker-in-Docker for running containers inside development environments?

Yes. DevContainers can be configured with Docker-in-Docker support by mounting the Docker socket and configuring the non-root user with appropriate permissions, enabling container operations within your development environment for CI/CD testing and multi-container workflows.

Can I use Python tooling like uv package manager in a DevContainer?

Yes. Include Python and uv in your multi-stage Dockerfile, then configure postCreateCommand to initialize tooling. DevContainers integrate Python dependencies and development tasks, supporting reproducible builds and consistent tool versions across environments.

What's the difference between setting up Docker manually versus using DevContainers?

DevContainers automate environment provisioning through declarative configuration (devcontainer.json), eliminating manual setup steps and ensuring consistency. They integrate directly with VS Code, handle volume mounting, non-root permissions, and postCreateCommand automation, reducing onboarding friction and environment drift.