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

# Using the install script
curl -fsSL https://devbox.ar0.eu/install.sh | bash
# Or manually: https://devbox.ar0.eu/docs/install/#manual-build-from-source

Note: 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

  •  
  •