6.6k star!推荐一款轻松创建隔离环境的命令行及容器工具!

发布时间:2023年12月20日

本文小编向大家推荐一款可轻松创建隔离的 shell 和容器的开源工具。这款工具叫做 Devbox, 中文名译为 开发者沙箱,GitHub Star 已经有6.6k。

下面给大家介绍这款工具的功能和使用。

项目介绍

Devbox 是一个可以让我们轻松创建隔离环境的 shell容器 的命令行工具。

开源地址:https://github.com/jetpack-io/devbox

首先定义你所使用开发环境中所需的软件包列表,然后 Devbox 将使用该定义来为我们的应用程序创建一个隔离的环境。

它的工作方式类似于 nodejs 环境中的 yarn 软件包管理器。只不过它所管理的软件包是操作系统级别的。

这些包你通常会通过 brew和 apt-get来进行安装。

主要功能

  • 支持Python及Go语言

  • 瞬间将你的应用程序变成一个容器

  • 不以牺牲速度为代价

  • 同版本冲突说再见

  • 不再重复声明依赖关系

  • 为团队中的每一个人提供一个统一的Shell

  • 不污染原先配置的环境

安装及使用Devbox

除了安装Devbox本身之外,你还需要安装 nixdocker,因为Devbox依赖于它们。

curl -fsSL https://get.jetpack.io/devbox | bash

初始化Devbox

devbox init

这将在当前目录下创建一个 devbox.json文件。你应该把它提交到源码控制里。

从Nix Packages添加命令行工具。例如,要添加Python 3.10:

devbox add python310

你的 devbox.json文件记录了你所添加的软件包,它现在应该看起来是这样的:

{
   "packages": [
      "python310"
    ]
}

启动一个安装了这些工具的新shell:

devbox shell

此时可以发现,你是在Devbox shell中(而不是你的普通终端),因为shell的提示和目录已经改变。

这个时候你的任何操作都是在Devbox环境下完成的,与你的本地毫无关系。

如果要退出Devbox shell并返回到你的常规shell:

exit

构建镜像

devbox build

生成的镜像名叫 devbox

用一个更具体的名称来标记该镜像:

docker tag devbox my-image:v0.1
文章来源:https://blog.csdn.net/z_ipython/article/details/135118104
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。