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

news2024/9/23 23:28:08

本文小编向大家推荐一款可轻松创建隔离的 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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1324786.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Spring MVC控制层框架

三、Spring MVC控制层框架 目录 一、SpringMVC简介和体验 1. 介绍2. 主要作用3. 核心组件和调用流程理解4. 快速体验 二、SpringMVC接收数据 1. 访问路径设置2. 接收参数(重点) 2.1 param 和 json参数比较2.2 param参数接收2.3 路径 参数接收2.4 json参…

vue 学习笔记

生命周期 1)定义:vue实例从创建到销毁的过程 2)钩子函数 2.1)beforeCreate:vue实例初始化之前调用,这个阶段vue实例刚刚在内存中创建,此时data和methods这些都没初始化好。 2.2)Cre…

新时代体育场馆的未来之路——气膜体育馆

近年来,我国正全面贯彻实施全民健身国家战略,秉持“发展群众体育,服务健康中国”的理念,深入推动群众参与的体育活动,努力实现全民健身与全民健康的深度融合发展。在这一大潮中,体育场馆建设成为业内的一项…

Linux:锁定文件chattr

chattr 锁定 使用该命令进行文件的锁定以提高安全性 chattr i /etc/passwd /etc/shadow chattr i 目标文件 这样这两个文件就不能被修改了,包括root也不能去修改,但是root可以解锁后再去修改 解锁 chattr -i /etc/passwd /etc/shadow chattr -i 目标…

《PySpark大数据分析实战》-16.云服务模式Databricks介绍运行案例

📋 博主简介 💖 作者简介:大家好,我是wux_labs。😜 热衷于各种主流技术,热爱数据科学、机器学习、云计算、人工智能。 通过了TiDB数据库专员(PCTA)、TiDB数据库专家(PCTP…

【深度学习】序列生成模型(六):评价方法计算实例:计算ROUGE-N得分【理论到程序】

文章目录 一、BLEU-N得分(Bilingual Evaluation Understudy)二、ROUGE-N得分(Recall-Oriented Understudy for Gisting Evaluation)1. 定义2. 计算N1N2 3. 程序 给定一个生成序列“The cat sat on the mat”和两个参考序列“The c…

快速入门 — — 在Moonbeam上开发

访问熟悉的以太坊工具是一回事,获得顶级支持、拥有构建突破性跨链应用程序的资源是另一回事。 Moonbeam汇集了通过集成互操作性解决方案访问任何链的能力、具有完全以太坊兼容性的理想开发环境,以及使用Substrate在波卡上安全扩展的能力。 开始在Moonb…

App(Android)ICP备案号查询——————高仿微信

😄 个人主页:✨拉莫帅-CSDN博客✨🤔 博文:132篇🔥 原创:130篇,转载:2篇🔥 总阅读量:388923❤️ 粉丝量:112🍁 感谢点赞和关注 &#x…

C/C++ BM1反转链表

文章目录 前言题目1.解决方案一1.1 思路阐述1.2 源码 2. 解决方案二2.1 思路阐述2.2 源码 总结 前言 这题是牛客网的BM1,主要涉及到链表的操作以及栈数据结构的使用。 题目 给定一个单链表的头结点pHead(该头节点是有值的,比如在下图,它的…

如何免费搭建私人电影网站(三)

接上一篇文章: 网站模版上传到空间后就进行安装网站了操作如下图: 打开链接地址: 输入前面设置好的FTP密码 进入安装界面 点同意后下一步 需要填入数据库的账号和密码 返回虚拟主机界面进行设置 如下图点初始化 修改数据库的密码 然后…

如何设置微信的自动回复,让你的沟通更高效?

你们会常常遇到这些问题吗? 1、有过客户添加你没有及时回复,导致客户的流失。 2、客户常问的问题每天要重复的回答,想要有快捷回复的方式或者有可以代替人工去回答一些问题。 ...... 微信自动回复就可以让你在忙碌或者不方便回复消息的时候&a…

带你深入解析 Compose 的 Modifier 原理 -- Modifier、CombinedModifier

Modifier 的含义 实际开发过程中,随处可见各种 Modifier,比如: Modifier.size() // 尺寸Modifier.width() // 宽度Modifier.height() // 高度Modifier.padding() // 间距Modifier.background() // 背景Modifier.…

二阶多智能体的一致性-包含matlab仿真代码

模型 这里仅用一个简单的双积分模型 { x ˙ i v i v ˙ i u i \begin{equation} \begin{cases} {\dot x}_i v_i \\ {\dot v}_i u_i \\ \end{cases} \end{equation} {x˙i​vi​v˙i​ui​​​​ 我们的控制最终的期望是使得状态趋于一致,即 lim ⁡ t → ∞ ∣…

2024年云渲染哪个便宜?超实惠不排队的云渲染农场推荐

随着云计算技术的进步,云渲染逐渐成为动画制作和视觉效果产业中的首选技术。然而,对于许多创作者来说,寻找既经济又可靠的云渲染提供商一直是个重点问题。在众多云渲染提供商中,一家以其超值的性价比而闻名的云渲染农场尤其受到青…

Windows下安装MongoDB实践总结

本文记录Windows环境下的MongoDB安装与使用总结。 【1】官网下载 官网下载地址:Download MongoDB Community Server | MongoDB 这里可以选择下载zip或者msi,zip是解压后自己配置,msi是傻瓜式一键安装。这里我们分别对比进行实践。 【2】ZI…

Hudi 表类型和查询类型

数据湖hudi的表类型定义了数据在DFS上如何组织布局,同时实现一些timeline等操作(表类型定定义数据是如何写入的);查询类型则是定义如何读取DFS上的数据。 Table typequery typeCopy-On-Write 快照查询; 增量查询&…

【数据分享】2019-2023年我国地级市逐年二手房房价数据(免费获取/Excel/Shp格式)

房价是一个城市发展程度的重要体现,一个城市的房价越高通常代表这个城市越发达,对于人口的吸引力越大!因此,房价数据是我们在各项城市研究中都非常常用的数据!之前我们分享了2019—2023年我国地级市逐月的二手房房价数…

VWAP 订单的最佳执行方法:随机控制法

数量技术宅团队在CSDN学院推出了量化投资系列课程 欢迎有兴趣系统学习量化投资的同学,点击下方链接报名: 量化投资速成营(入门课程) Python股票量化投资 Python期货量化投资 Python数字货币量化投资 C语言CTP期货交易系统开…

React基础巩固日志2

今天开始学习理解如何使用 props向组件传递数据和事件处理函数 在 React 中,props 是组件之间交互的一种方式,它允许你将数据从一个组件传递到另一个组件,下面我书写一个demo,以便于我更好的理解组件之间传值 这个例子中&#xff…

基于遥感数据的地表蒸散量的获取与分析的解决方案

1.引言 蒸散是指水分从地表移向大气的过程,它包括土壤与植株表面液相或固相水的蒸发和通过植物组织的蒸腾。蒸散过程是土壤、植被、大气系统中水分运移、转化的重要环节,因此准确的估算区域蒸散量能够有效提高气象预测以及水文气象预测的精度, 同时蒸散量的精确估算对于地理、…