Skip to content

itzCozi/devbox

devbox

Isolated development environments for anything

CI Go Report Card License

devbox creates isolated development environments, contained in a project's Docker box (container). Each project operates in its own disposable environment, while your code remains neatly organized in a simple, flat folder on the host machine.

Features

  • 🚀 Instant Setup - Create isolated development environments in seconds
  • 🐳 Docker-based - Leverage the power of boxes (containers) for consistent environments
  • 📁 Clean Organization - Keep your code organized in simple, flat folders
  • 🔧 Configurable - Define your environment with simple JSON configuration
  • 🗑️ Disposable - Easily destroy and recreate environments as needed
  • 🛡️ Isolated - Each project runs in its own box, preventing conflicts
  • 🔄 Docker-in-Docker - Use Docker within your devbox environments by default
  • 🐧 Linux-only - Officially supported on Debian/Ubuntu systems
  • 🧪 Well Tested - Comprehensive test suite on Linux

Why devbox?

devbox focuses on fast, disposable, Docker-native development environments with simple, commit-friendly config.

  • Minimal config: a small JSON file, no heavy frameworks
  • Clean host workspace: flat folders, no complex mounts
  • Reproducible: isolated per-project boxes you can destroy/recreate anytime
  • Docker-in-Docker ready: use Docker inside your environment out of the box
  • Designed for Linux/WSL: optimized for Debian/Ubuntu workflows

Installation

# Mirror (CDN)
curl -fsSL https://devbox.ar0.eu/install.sh | bash

# Using the install script
curl -fsSL https://raw.githubusercontent.com/itzcozi/devbox/main/install.sh | bash

# Or manually: https://devbox.ar0.eu/docs/install/#manual-build-from-source

Notes:

  • Some managed shell environments (e.g., AWS CloudShell) may block or challenge CDN traffic, resulting in HTTP 403 when hitting the mirror. Use the primary GitHub Raw URL above in those environments.
  • devbox supports Linux environments only (Debian/Ubuntu). On Windows, use WSL2 with an Ubuntu distribution.

Quick Start

  1. Initialize a new project

    devbox init my-project
  2. Enter the development environment

    devbox shell my-project
  3. Run commands in the environment

    devbox run my-project "python --version"
  4. List your environments

    devbox list
  5. Clean up when done

    devbox destroy my-project

Shared configs

Commit a devbox.json to your repo so teammates can just:

devbox up

Optional: mount your local dotfiles into the box

devbox up --dotfiles ~/.dotfiles

Documentation

For detailed documentation, guides, and examples, visit:

📖 devbox.ar0.eu

License

This project is licensed under the MIT License. See the LICENSE file for details.

Created by BadDeveloper with 💚

About

Create and manage isolated development environments using Docker with ease.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Contributors 2

  •  
  •