DEV.co
AI Frameworks · tensorchord

envd

envd is a CLI tool that simplifies creation of containerized development environments for AI/ML workloads by replacing complex Dockerfiles and shell scripts with a declarative Python-based configuration. It leverages BuildKit for efficient caching and supports both local and Kubernetes deployment contexts.

Source: GitHub — github.com/tensorchord/envd
2.2k
GitHub stars
168
Forks
Go
Primary language
Apache-2.0
License (OSI-approved)

Key facts

Objective fields from the source. Values we can't verify are shown as “Unknown” rather than guessed.

FieldValue
Repositorytensorchord/envd
Ownertensorchord
Primary languageGo
LicenseApache-2.0 — OSI-approved
Stars2.2k
Forks168
Open issues136
Latest releasev1.3.4 (2026-02-07)
Last updated2026-07-03
Sourcehttps://github.com/tensorchord/envd

What envd is

envd generates OCI-compliant container images from a Python DSL build manifest, integrating BuildKit for layer caching (pip/apt), remote builds, and deployment flexibility across local Docker and Kubernetes clusters. Written in Go with a Python frontend, it handles dependency resolution, package installation, and service exposure automatically.

Quickstart

Get the envd source

Clone the repository and explore it locally.

terminalbash
git clone https://github.com/tensorchord/envd.gitcd envd# follow the project's README for install & configuration

Need it deployed, integrated, or customized instead? DEV.co ships production installs.

Best use cases

AI/ML team environment standardization

Teams can define reproducible ML dev environments once in build.envd, share via Git, and spin up identical setups locally or in cluster without Dockerfile complexity or manual dependency management.

Fast prototyping with cached builds

BuildKit caching for PyPI and APT repositories significantly reduces rebuild time when iterating on dependencies, eliminating redundant package downloads across team members.

Hybrid local-to-cloud development workflows

Switch deployment context via `envd context use` to run the same environment definition locally for development or on Kubernetes for scale without reconfiguration.

Implementation considerations

  • Docker daemon (20.10.0+) and BuildKit must be installed and running; requires `envd bootstrap` initialization before first use.
  • Learning curve: developers familiar with shell scripts or Dockerfiles must learn envd's Python DSL syntax, though the README examples reduce onboarding friction.
  • Build performance depends on BuildKit cache hit rates; teams should establish shared cache strategies (e.g., registry-backed caches) for consistent CI/CD performance.
  • Remote build capability requires network access to build machine and container registry; on-premise deployments need registry setup.
  • Image size and startup time should be profiled for resource-constrained environments; envd's dev=True default includes extra tools that may bloat images.

When to avoid it — and what to weigh

  • Non-container-based deployment required — envd is built on container technology and Docker; projects requiring VMs, bare metal, or non-OCI runtimes are not supported.
  • Simple, single-package dependency environments — For trivial setups with minimal dependencies, the overhead of learning envd's DSL and running containers may outweigh benefits compared to simple shell setup scripts.
  • Strict deterministic reproducibility across years — While envd improves reproducibility, pinning base images and transitive dependencies still requires discipline; environments can drift if base image tags are not locked to specific digests.
  • Environments requiring custom low-level kernel modules or hardware passthrough — envd abstracts container runtime details; advanced host-level configuration (custom kernel, GPU passthrough, device mount) may require manual Docker/Kubernetes intervention beyond envd's scope.

License & commercial use

Apache License 2.0 (Apache-2.0) — permissive OSI-approved license allowing commercial use, modification, and distribution with minimal restrictions. Requires retention of license and copyright notices.

Apache-2.0 explicitly permits commercial use. No proprietary restrictions or commercial licensing tiers evident from the license text. However, as with any open-source tool, you remain responsible for compliance with dependencies' licenses (Python packages, base images, BuildKit) in your supply chain.

DEV.co evaluation signals

Editorial assessment — not user reviews. Directional, with an explicit confidence level.

SignalAssessment
MaintenanceActive
DocumentationAdequate
License clarityClear
Deployment complexityLow
DEV.co fitStrong
Assessment confidenceHigh
Security considerations

No claims of security audit or threat model provided. Container isolation depends on Docker/OCI runtime and underlying kernel; envd does not introduce additional isolation. No built-in secrets management or encryption; credentials must be managed externally. Supply-chain risk: envd pulls base images and packages from registries; validate sources and use private registries if needed. Requires review for compliance with security baselines (SBOM, signed images, vulnerability scanning).

Alternatives to consider

Docker + Dockerfile

Industry standard, zero learning curve for existing teams, maximal control over layer composition; trade-off is verbose syntax, manual caching tuning, and no team knowledge-sharing mechanism.

Conda environment.yml + Docker

Lighter-weight, language-native dependency management without containerization; insufficient for full reproducibility across OS/CUDA versions and team consistency without additional tooling (e.g., Pixi, Mamba).

Nix Flake / Nix shell

Declarative, functional approach to reproducible environments; steep learning curve, smaller ecosystem, and less container-friendly than envd for teams already using Docker.

Software development agency

Build on envd with DEV.co software developers

Use envd to replace Dockerfile complexity with a simple Python configuration, share via Git, and deploy to local Docker or Kubernetes clusters instantly.

Talk to DEV.co

Related open-source tools

Surfaced by semantic similarity across the DEV.co open-source index.

Related on DEV.co

Explore the category and the services that help you build with it.

envd FAQ

Can I use envd in CI/CD pipelines?
Yes. envd generates standard OCI images that can be pushed to registries and consumed by CI/CD tools (GitHub Actions, GitLab CI, etc.). Use `envd build` to produce images for storage/deployment without `envd up`.
Does envd work on macOS or Windows?
envd requires Docker; on macOS/Windows this means Docker Desktop. Functionality is equivalent, though remote build and Kubernetes contexts may have platform-specific considerations (not detailed in provided data).
How does envd compare to docker-compose?
envd focuses on environment definition and image building; docker-compose orchestrates multi-container runtime. They are complementary: use envd to build the image, docker-compose to run services. envd's DSL is simpler for single-service dev envs.
What happens if a dependency goes away (e.g., PyPI package deletion)?
envd relies on upstream registries; if a package is deleted, builds fail unless pinned to a specific version or cached locally. Use lock files or private package mirrors to mitigate.

Custom software development services

From first prototype to production, DEV.co delivers software development services around tools like envd. Our software development agency staffs experienced software developers and web developers for custom software development, web development, integrations, and ongoing support across ai frameworks and beyond.

Standardize team development environments in minutes

Use envd to replace Dockerfile complexity with a simple Python configuration, share via Git, and deploy to local Docker or Kubernetes clusters instantly.