devcontainer-workflow

Create reproducible DevContainer environments with Docker, uv, and multi-stage builds.

Updated Apr 11, 2023
One-click install
npx skills add https://github.com/salverius-tech/dotfiles --skill devcontainer-workflow-salverius-tech
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: devcontainer-workflow
Source: https://github.com/salverius-tech/dotfiles/tree/main/home/dot_claude/skills/devcontainer-workflow
Command: npx skills add https://github.com/salverius-tech/dotfiles --skill devcontainer-workflow-salverius-tech

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve?

This Skill streamlines the setup and management of consistent, reproducible development environments using Docker and DevContainers, eliminating "it works on my machine" issues.

Core Features & Use Cases

  • Reproducible Environments: Ensures all developers work with the exact same tools, dependencies, and configurations.
  • Multi-stage Dockerfiles: Optimizes build times and image sizes by separating build and runtime stages.
  • Non-root User Security: Enhances security by running processes within the container as a non-privileged user.
  • Use Case: A team can onboard new members quickly by having them spin up a pre-configured development environment in minutes, complete with all necessary tools and dependencies, ready for coding.

Quick Start

Use the devcontainer-workflow skill to create a new Python 3.14 development environment with uv and Docker-in-Docker support.

Frequently Asked Questions about devcontainer-workflow

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

FAQPage Schema
How do I create a reproducible Python development environment using Docker?

You create a reproducible Python development environment using Docker by configuring DevContainers with multi-stage builds, non-root user setup, and the uv package manager to ensure consistent dependencies across machines.

What is the best way to manage environment variables in a DevContainer?

The best way to manage environment variables in a DevContainer is to use .env files. This approach centralizes configuration and ensures consistent environment variable management across different development machines and CI/CD pipelines.

Does DevContainer workflow support Docker-in-Docker for CI/CD pipelines?

Yes, DevContainer workflow supports Docker-in-Docker capabilities. This allows you to run Docker commands inside your DevContainer, facilitating consistent project setups and testing across different machines and CI/CD pipelines.

Can I use multi-stage Dockerfiles to optimize Python image builds with uv?

Yes, you can use multi-stage Dockerfiles to optimize Python image builds with uv. This approach separates build and runtime stages, which optimizes build times and reduces image sizes for your reproducible development environment.

How do I set up a non-root user in a Docker DevContainer?

You set up a non-root user in a Docker DevContainer through the DevContainer configuration. This enhances security by ensuring processes within the container run as a non-privileged user instead of root.

Why should I use uv instead of standard pip in a Python DevContainer?

Using uv instead of standard pip in a Python DevContainer streamlines dependency management. Combined with DevContainer configurations, uv ensures all developers work with the exact same tools and dependencies, eliminating environment inconsistencies.