dev containers plugins for vscode构建虚拟开发环境

0. 需求说明

自用笔记本构建一套开发环境,用docker 虚拟插件 dev containers,实现开发环境的构建,我想构建一套LLMs的环境,由于环境配置太多,不想污染本地环境,所以选择隔离技术

1. 环境准备

  • vscode
  • docker

2. 步骤

2.1 vscode 安装插件

  • Dev Containers
  • Remote Development

2.2 项目根目录下创建.devcontainer文件

目录结构
目录结构

2.2.1 直接用镜像构建环境

devcontainers.json
VS Code Dev Containers官方文档
字段说明【具体字段参见官方网站字段描述】:
1.name:dev container 名称
2.image:镜像名称
3. customizations:在支持的工具中定义
4. build:dockerfile 构建时需要配置
5. context:构建的位置上下文,默认. 当前目录,.. 表示上级目录
6. dockerfile: dockerfile 文件

{"name": "LLMs From Scratch","image": "llms-from-scratch:0.1","customizations": {"vscode": {"extensions": ["ms-python.python","ms-azuretools.vscode-docker","ms-toolsai.jupyter","yahyabatulu.vscode-markdown-alert","tomoki1207.pdf","mechatroner.rainbow-csv"]}}
}

2.2.2 用Dockefile构建镜像

devcontainers.json

{"name": "LLMs From Scratch","build": {"context": "..","dockerfile": "Dockerfile"},"customizations": {"vscode": {"extensions": ["ms-python.python","ms-azuretools.vscode-docker","ms-toolsai.jupyter","yahyabatulu.vscode-markdown-alert","tomoki1207.pdf","mechatroner.rainbow-csv"]}}
}

Dockerfile

FROM pytorch/pytorch:2.0.1-cuda11.7-cudnn8-runtimeRUN apt-get update && \apt-get upgrade -y && \apt-get install -y rsync && \apt-get install -y git && \apt-get install -y curl && \rm -rf /var/lib/apt/lists/*COPY requirements.txt requirements.txt
RUN pip install --no-cache-dir -r requirements.txt

requirements 环境需要的配置信息

torch >= 2.0.1       
jupyterlab >= 4.0    
tiktoken >= 0.5.1    
matplotlib >= 3.7.1  
tensorflow >= 2.15.0 
tqdm >= 4.66.1       
numpy >= 1.25, < 2.0  
pandas >= 2.2.1       
psutil >= 5.9.5     

3.启动环境

Command + Shift + P
输入:Dev Containers: Rebuild and Reopen in Container

启动截图

启动成功截图
环境启动成功截图

4. 关闭环境

File —>close remote connection

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

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

相关文章

Spark 的 Skew Join 详解

Skew Join 是 Spark 中为了解决数据倾斜问题而设计的一种优化机制。数据倾斜是指在分布式计算中&#xff0c;由于某些 key 具有大量数据&#xff0c;而其他 key 数据较少&#xff0c;导致某些分区的数据量特别大&#xff0c;造成计算负载不均衡。数据倾斜会导致个别节点出现性能…

韦东山FreeRTOS笔记

介绍 这篇文章是我学习FreeRTOS的笔记 学的是哔哩哔哩韦东山老师的课程 在学习FreeRTOS之前已经学习过江协的标准库和一丢丢的超子说物联网的HAL了。他们讲的都很不错 正在更新&#xff0c; 大家可以在我的Gitee仓库中下载笔记源文件、项目资料等 笔记源文件可以在Notion…

idea.vmoptions 最佳配置

1. 推荐的 idea64.exe.vmoptions 配置&#xff1a; -Xms1024m -Xmx4096m -XX:ReservedCodeCacheSize512m -XX:UseG1GC -XX:SoftRefLRUPolicyMSPerMB50 -XX:CICompilerCount4 -XX:HeapDumpOnOutOfMemoryError -XX:-OmitStackTraceInFastThrow -Dsun.io.useCanonCachesfalse -Dj…

微服务JSR303解析部署使用全流程

目录 1、什么是JSR303校验 2、小试牛刀 【2.1】添加依赖 【2.2】添加application.yml配置文件修改端口 【2.3】创建实体类User 【2.4】创建控制器 【2.5】创建启动类 【注意】不必创建前端页面 3、规范返回值格式&#xff1a; 3.1添加ResultCode工具类 3.2添加Resul…

【ChatGPT】Python 实现计算两线段的变换矩阵

作为一个数学专家&#xff0c;请给出下面的这个问题的数学解法&#xff1b; 要求如下&#xff1a; 1. 给出数学推理公式 2. 给出 python 的实现方式已知条件&#xff1a; 1. 三维空间中&#xff0c;线段L1&#xff0c;L1 由点 A1 (ax1, ay1, az1) 与 B1 (bx1, by1, bz1) 组成&a…

NASA数据集:ATLAS/ICESat-2 L3B 南极和北极网格陆地冰高,第 3 版

目录 简介 摘要 代码 引用 网址推荐 0代码在线构建地图应用 机器学习 ATLAS/ICESat-2 L3B Gridded Antarctic and Arctic Land Ice Height V003 简介 ATLAS/ICESat-2 L3B 南极和北极网格陆地冰高&#xff0c;第 3 版 ATL14 和 ATL15 将 ATLAS/ICESat-2 L3B 年度陆地冰…

【蓝桥杯省赛真题55】Scratch找不同游戏 蓝桥杯scratch图形化编程 中小学生蓝桥杯省赛真题讲解

scratch找不同游戏 第十五届青少年蓝桥杯scratch编程选拔赛真题解析 PS&#xff1a;其实这题在选拔赛里面就出现过类似的题目&#xff0c;只是难度提升了一点&#xff0c;具体可以见【蓝桥杯选拔赛真题84】Scratch找不同游戏 第十五届蓝桥杯scratch图形化编程 少儿编程创意编…

java日志门面之JCL和SLF4J

文章目录 前言一、JCL1、JCL简介2、快速入门3、 JCL原理 二、SLF4J1、SLF4J简介2、快速入门2.1、输出动态信息2.2、异常信息的处理 3、绑定日志的实现3.1、slf4j实现slf4j-simple和logback3.2、slf4j绑定适配器实现log4j3.2、Slf4j注解 4、桥接旧的日志框架4.1、log4j日志重构为…

通过队列实现栈

请你仅使用两个队列实现一个后入先出&#xff08;LIFO&#xff09;的栈&#xff0c;并支持普通栈的全部四种操作&#xff08;push、top、pop 和 empty&#xff09;。 实现 MyStack 类&#xff1a; void push(int x) 将元素 x 压入栈顶。int pop() 移除并返回栈顶元素。int to…

Android源码管理

文章目录 需求及场景需求困难疑惑点 源码管理方式及过程基本仓库管理方式 常用源码git 命令git init添加.gitignoregit add allgit add 文件名称git commit -a -m "提交内容说明"git statusgit loggit reset --hardgit clean -fd实际场景&#xff0c;从一个项目切换到…

大屏走马灯与echarts图表柱状图饼图开发小结

一、使用ant-design-vue的走马灯(a-carousel)注意事项 <!-- 左边的轮播图片 --><a-carousel :after-change"handleCarouselChange" autoplay class"carousel" :transition"transitionName"><div v-for"(item, index) in it…

计算机性能指标之MFLOPS

1. MFLOPS的定义与计算方式 定义&#xff1a;MFLOPS&#xff0c;全称Million Floating-point Operations Per Second&#xff0c;即每秒百万次浮点运算&#xff0c;是衡量计算机系统浮点运算能力的一个重要技术指标。 计算方式&#xff1a;MFLOPS的计算公式为“浮点操作次数 /…

llama_deploy

本文于 240924 翻译整理自: https://docs.llamaindex.ai/en/stable/module_guides/workflow/deployment/ 文章目录 一、关于 🦙`llama_deploy`🤖为什么使用 `llama_deploy`?等等,`llama-agents` 在哪里?二、入门1、安装2、高级部署3、部署核心系统4、部署工作流5、与部…

论文阅读【时间序列】ModerTCN (ICLR2024)

【时间序列】ModerTCN (ICLR2024) 原文链接&#xff1a;ModernTCN: A Modern Pure Convolution Structure for General Time Series Analysis 代码仓库&#xff1a;ModerTCN 简易版本实现代码可以参考&#xff1a;&#xff08;2024 ICLR&#xff09;ModernTCN&#xff1a;A Mod…

解决hbase和hadoop的log4j依赖冲突的警告

一、运行hbase的发现依赖冲突的警告 这警告不影响使用 二、重命名log4j文件 进入HBase的lib包下&#xff0c;将HBase的log4j文件重命名&#xff0c;改成备份&#xff0c;这样再次运行hbase的时候&#xff0c;就没有依赖冲突了。 三、冲突成功解决

C++模版类实现栈

text.h #ifndef TEXT_H #define TEXT_H#include <stdexcept> // 用于 std::out_of_rangetemplate <typename T> class MyStack { private:T* data; // 指向底层数组的指针int capacity; // 容量int top; // 栈顶索引int size; // 当前元…

Iterm2配置主题和Oh-My-Zsh

文章目录 一、配置主题1.1 安装使用git1.2 安装手册1.2.1 激活使用主题 二、配置oh-my-zsh2.1、oh-my-zsh插件2.2、oh-my-zsh主题 [Zsh](http://zsh.org/)2.2.1、Install using Git2.2.2、Install manually2.2.3、Activating theme2.2.4、Install using [zplug](https://github…

基于Hive和Hadoop的图书分析系统

本项目是一个基于大数据技术的图书分析系统&#xff0c;旨在为用户提供全面的图书信息和深入的图书销售及阅读行为分析。系统采用 Hadoop 平台进行大规模数据存储和处理&#xff0c;利用 MapReduce 进行数据分析和处理&#xff0c;通过 Sqoop 实现数据的导入导出&#xff0c;以…

光耦合器在信号传输和隔离中的作用

光耦合器&#xff0c;也称为光隔离器&#xff0c;是电子电路中的关键元件&#xff0c;它结合了两个基本功能&#xff1a;信号传输和电气隔离。它们允许信号在电路的不同部分之间传递&#xff0c;同时保持它们彼此电气隔离。此功能对于保护敏感的低压控制电路免受更高电压、噪声…

算法实战:剖析微服务接口鉴权限流背后的数据结构和算法

算法实战:剖析微服务接口鉴权限流背后的数据结构和算法 在当今的微服务架构中,接口鉴权和限流是保障系统安全和稳定运行的重要手段。它们背后涉及到一系列的数据结构和算法,本文将深入剖析这些技术,通过具体案例让你更好地理解其工作原理。 一、问题背景 随着微服务架构…