Vagrant VS vscode-dev-containers

Compare Vagrant vs vscode-dev-containers and see what are their differences.

Vagrant

Vagrant is a tool for building and distributing development environments. (by hashicorp)

vscode-dev-containers

NOTE: Most of the contents of this repository have been migrated to the new devcontainers GitHub org (https://github.com/devcontainers). See https://github.com/devcontainers/template-starter and https://github.com/devcontainers/feature-starter for information on creating your own! (by microsoft)
Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
Vagrant vscode-dev-containers
115 41
25,852 4,625
0.6% -
9.0 0.0
5 days ago 5 months ago
Ruby Shell
MIT License MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

Vagrant

Posts with mentions or reviews of Vagrant. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-04-20.
  • Ask HN: Please recommend how to manage personal serverss
    4 projects | news.ycombinator.com | 20 Apr 2024
    Take a look at Vagrant! https://www.vagrantup.com/ In my admittedly limited understanding I believe it offers closer to a nix like reproducable rather than repeatable deployments.
  • Software Company HashiCorp Is Weighing a Potential Sale
    4 projects | news.ycombinator.com | 16 Mar 2024
    on the off chance one hasn't been tracking it, there were several "we don't need your stinking BuSL" projects when this drama first started:

    https://github.com/opentofu#why-opentofu (Terraform)

    https://github.com/openbao/openbao#readme (Vault)

    and I know of several attempts at Vagrant <https://github.com/hashicorp/vagrant/forks> but I don't believe one of them has caught traction yet

    There are also some who have talked about an "open Nomad" but since I don't play in that space I can't speak to it

  • Ask HN: Cleanest way to manage Windows OS?
    4 projects | news.ycombinator.com | 22 Feb 2024
    It sounds like you're using Nix as a sort of configuration management solution. CM just isn't worth it for managing a single desktop IMO. It triples the effort for whenever you need to add or remove a package, as you must now add that also to your nix configuration. You're supposed to be able to make that back up in time saved restoring to the next machine, but inevitably the next machine will be different enough that you'll have to edit it all anyway. In the end I just got tired of trying to manage my own machine with infrastructure as code (though in fairness I was using puppet at the time not nix).

    I keep a git repository with all my dot files in it[1]. This seems to work the best. It has a Windows folder as well, and I copy that out whenever I need to set up Windows.

    A lot of people like using WSL but I hate how it hogs on my memory. Hyper-V is a terrible virtualization engine for consumer-grade use cases because it can't thin provision RAM. If I need to use docker, I will spin up a small Linux VM using vagrant[3] with Virtualbox[4] and put Docker on there. Vagrant is an extremely underrated tool in my opinion, particularly in a Windows context.

    I use scoop for packages. Typically I will scoop install msys2 and then pin it so that it doesn't get blown away by the next upgrade.

    Then I basically do all of my development inside of msys2. I can get most things running in there without virtualization. In my case that means sbcl and roswell for common lisp, senpai for irc, and tmux and nvim for sanity. Msys2 uses the pacman package manager and this is good enough.

    All In all, I set up my Windows machine affresh after a while of not using it and it took me about 3 hours. Most of that time was just getting through upgrades though, I felt like it was pretty fast.

    1: https://git.sr.ht/~skin/dotfiles

    2: https://www.msys2.org/

    3: https://www.vagrantup.com/

    4: https://www.virtualbox.org/

  • A Developer's Journal: Simplifying the Twelve-Factor App
    9 projects | dev.to | 3 Dec 2023
    Tools like Docker and Vagrant can be used to allow local environments to mimic production environments.
  • Is there any place where I can download an already configured Virtual machine? For example with Linux Ubuntu or Windows 10 preinstalled?
    1 project | /r/virtualbox | 20 Nov 2023
  • UTM – Virtual Machines for iOS and macOS
    9 projects | news.ycombinator.com | 30 Aug 2023
    There's an open issue [1]. A scripting interface has since been added [2], and updated [3], so there's progress.

    [1] https://github.com/hashicorp/vagrant/issues/12518

  • Vagrant license changed to BUSL-1.1
    1 project | news.ycombinator.com | 10 Aug 2023
  • HashiCorp Adopts Business Source License
    25 projects | news.ycombinator.com | 10 Aug 2023
    Someone should fork and maintain Vagrant with an MPL open source license:

    https://github.com/hashicorp/vagrant

  • Codespaces but open-source, client-only, and unopinionated
    18 projects | news.ycombinator.com | 20 Jun 2023
    https://github.com/hashicorp/vagrant/blob/v2.3.7/CHANGELOG.m... ?

    The changelog lists both improvements and bug fixes and there's even apparently some effort to port it away from ruby: https://github.com/hashicorp/vagrant/blob/v2.3.7/internal/cl...

  • Vagrant Fatal Error: Runtime BSDThread_Register Error
    1 project | /r/u_bugfreesoft | 5 Jun 2023
    If you’ve ever encountered the dreaded “Vagrant fatal error: runtime BSDThread_Register error,” you’re not alone. This perplexing error message can be frustrating and confusing, especially if you’re new to Vagrant and virtualization. But fear not! In this article, we’ll unravel the mystery behind this error, explain its meaning, and provide solutions to help you overcome it.

vscode-dev-containers

Posts with mentions or reviews of vscode-dev-containers. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-02-24.
  • How to use Ansible on Linux with tools like visual Studio code
    2 projects | /r/ansible | 24 Feb 2023
  • Setup GitHub Codespaces with AWS IAM Roles Anywhere
    4 projects | dev.to | 22 Sep 2022
    // For format details, see https://aka.ms/devcontainer.json. For config options, see the README at: // https://github.com/microsoft/vscode-dev-containers/tree/v0.241.1/containers/ubuntu { "name": "Ubuntu", "build": { "dockerfile": "Dockerfile", "args": { "VARIANT": "ubuntu-22.04" } }, "postStartCommand": ".devcontainer/env.sh", "remoteUser": "vscode", "features": { "git": "os-provided", "aws-cli": "latest", "golang": "latest", "sshd": "latest" } }
  • Jupyter Notebooks + VSCode Dev Container with Puppeteer support
    5 projects | dev.to | 30 Aug 2022
    # See here for image contents: https://github.com/microsoft/vscode-dev-containers/tree/v0.245.0/containers/python-3/.devcontainer/base.Dockerfile # [Choice] Python version (use -bullseye variants on local arm64/Apple Silicon): 3, 3.10, 3.9, 3.8, 3.7, 3.6, 3-bullseye, 3.10-bullseye, 3.9-bullseye, 3.8-bullseye, 3.7-bullseye, 3.6-bullseye, 3-buster, 3.10-buster, 3.9-buster, 3.8-buster, 3.7-buster, 3.6-buster ARG VARIANT="3.10-bullseye" FROM mcr.microsoft.com/vscode/devcontainers/python:0-${VARIANT} # [Choice] Node.js version: none, lts/*, 16, 14, 12, 10 ARG NODE_VERSION="none" RUN if [ "${NODE_VERSION}" != "none" ]; then su vscode -c "umask 0002 && . /usr/local/share/nvm/nvm.sh && nvm install ${NODE_VERSION} 2>&1"; fi # Install Google Chrome Stable and fonts # Note: this installs the necessary libs to make the browser work with Puppeteer. ENV PUPPETEER_SKIP_CHROMIUM_DOWNLOAD true RUN apt-get update && apt-get install gnupg wget -y && \ wget --quiet --output-document=- https://dl-ssl.google.com/linux/linux_signing_key.pub | gpg --dearmor > /etc/apt/trusted.gpg.d/google-archive.gpg && \ sh -c 'echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google.list' && \ apt-get update && \ apt-get install google-chrome-stable -y --no-install-recommends && \ rm -rf /var/lib/apt/lists/* # [Optional] If your pip requirements rarely change, uncomment this section to add them to the image. COPY requirements.txt /tmp/pip-tmp/ RUN pip3 --disable-pip-version-check --no-cache-dir install -r /tmp/pip-tmp/requirements.txt \ && rm -rf /tmp/pip-tmp
  • VS Code Dev Containers: A repository of development container definitions
    1 project | news.ycombinator.com | 28 Aug 2022
  • rust-analyzer changelog #143
    2 projects | /r/rust | 22 Aug 2022
    Looks like they do? https://github.com/microsoft/vscode-dev-containers/issues/675
  • Exploring .NET WebAssembly with WASI and Wasmtime
    8 projects | dev.to | 9 Aug 2022
    In the vscode-dev-containers repo, you'll see that there too is a .devcontainer directory. This contains instructions for building the dotnet vscode-dev-container. Click into the directory.
  • Recommended devcontainers for both Python and R workflows?
    1 project | /r/docker | 9 Aug 2022
    I'm trying to set up a dev environment which utilises the standard Python 3 devcontainer for Python files (which is great IMO), but also utilises the R devcontainer for R files. Or at the very least sets up the basic R for VSCode environment espoused on the VSCode tutorials.
  • Introduction to GitHub Codespaces - Building your first Dev Container
    2 projects | dev.to | 6 Aug 2022
    Select a predefined container definition. In my case I will select 'Ubuntu'. NOTE: There is a growing variety of predefined images that can be selected from, maintained on GitHubs vscode-dev-containers repository:
  • Extending VSCode Dev Container Features
    4 projects | dev.to | 27 Jul 2022
    As documented here, a Dev Container's built-in features are sources from the script-library folder in the vscode-dev-containers repo. The Remote - Containers extension and GitHub Codespaces include "preview" functionality to extend Dev Container features. You can add any custom feature by using the dev-container-features-template sample repository.
  • what is a development container?
    1 project | /r/learnprogramming | 5 Jul 2022
    In your case in the development container you can specify a specific version of .NET SDK and Azure Functions SDK. There is a premade devcontainer for VSCode with Azure Functions and C#: https://github.com/microsoft/vscode-dev-containers/tree/main/containers/azure-functions-dotnet-6-isolated

What are some alternatives?

When comparing Vagrant and vscode-dev-containers you can also consider the following projects:

Packer - Packer is a tool for creating identical machine images for multiple platforms from a single source configuration.

distrobox - Use any linux distribution inside your terminal. Enable both backward and forward compatibility with software and freedom to use whatever distribution you’re more comfortable with. Mirror available at: https://gitlab.com/89luca89/distrobox

Ansible - Ansible is a radically simple IT automation platform that makes your applications and systems easier to deploy and maintain. Automate everything from code deployment to network configuration to cloud management, in a language that approaches plain English, using SSH, with no agents to install on remote systems. https://docs.ansible.com.

openvscode-server - Run upstream VS Code on a remote machine with access through a modern web browser from any device, anywhere.

QEMU - Official QEMU mirror. Please see https://www.qemu.org/contribute/ for how to submit changes to QEMU. Pull Requests are ignored. Please only use release tarballs from the QEMU website.

Code-Server - VS Code in the browser

Capistrano - A deployment automation tool built on Ruby, Rake, and SSH.

dotfiles - ⊙ All the dotfiles needed to make the world a better place

Puppet - Server automation framework and application

SDKMan - The SDKMAN! Command Line Interface

BOSH - Cloud Foundry BOSH is an open source tool chain for release engineering, deployment and lifecycle management of large scale distributed services.

angular-cli - CLI tool for Angular