Windows安装 WSL2、Ubuntu 、docker(详细步骤 , 弃用 docker desktop )


前言

在现代软件开发领域,容器化技术已经成为提升应用部署效率和环境一致性的关键手段。Docker 作为一款卓越且被广泛应用的容器化平台,凭借其独特的技术架构,允许开发者将应用程序及其所需的全部依赖项,完整地打包进一个高度可移植的容器中。这一创新的技术方案,使得应用无论部署在何种基础环境,无论是本地开发机、测试服务器,还是复杂的生产集群,都能以高度一致的方式稳定运行,极大地降低了因环境差异导致的应用故障风险。在 Windows 操作系统生态中,Docker Desktop 凭借其出色的易用性,成为了广大开发者安装 Docker 的首选途径。它精心设计的用户友好型图形界面,将原本复杂繁琐的 Docker 安装与日常管理流程大幅简化。通过直观的操作界面,即使是初次接触 Docker 的新手,也能在短时间内轻松完成安装,并且在后续的镜像管理、容器启停、网络配置等操作中,享受到高效便捷的使用体验。

然而,如同任何技术产品一样,Docker Desktop 在带来便利的同时,也存在一些难以回避的局限性。从功能层面来看,尽管其功能覆盖广泛,但仍有部分高级功能在 Docker Desktop 上无法充分释放其全部潜力,甚至某些前沿功能还处于试验阶段,稳定性和完整性有待进一步提升。这无疑会对那些依赖这些功能进行深度开发和优化的用户,造成显著的使用体验影响。在资源占用和兼容性方面,作为一个独立运行的大型应用程序,Docker Desktop 在运行过程中不可避免地会占用相当数量的系统资源,包括内存、CPU 等关键硬件资源。这对于那些运行在硬件配置有限的开发环境,或者同时运行多个资源密集型应用程序的用户来说,可能会导致系统整体性能下降。更为棘手的是,Docker Desktop 与其他应用程序之间偶尔会出现兼容性冲突,这不仅增加了用户排查和解决问题的难度,也可能会对正在进行的开发工作造成不必要的中断。

此外,对于长期沉浸在命令行操作环境,习惯通过简洁高效的命令行指令完成各项任务的开发者而言,Docker Desktop 的图形化界面反而可能成为一种操作负担。他们更倾向于在熟悉的命令行交互模式下,对 Docker 进行精细化控制。而在 Windows Subsystem for Linux 2(WSL2)中安装 Docker Engine,则恰好满足了这部分用户的需求。

WSL2 是微软投入大量研发资源精心打造的一项前沿技术,它为 Windows 系统用户带来了前所未有的 Linux 环境运行体验。通过 WSL2,用户可以在 Windows 系统上近乎原生地运行完整的 Linux 环境,并且在性能表现和兼容性方面都达到了行业领先水平。在 WSL2 中安装 Docker Engine,开发者不仅能够获得更为纯粹、原生的 Docker 使用体验,充分发挥 Docker 的全部技术优势,还能巧妙避开 Docker Desktop 存在的诸多限制与兼容性问题。同时,命令行交互方式也让习惯使用命令行的开发者能够延续他们熟悉的操作习惯,极大地提高开发效率。

一、WSL 2和Hyper-V的区别

WSL 2(Windows Subsystem for Linux 2) 和 Hyper-V 是微软提供的两种不同的虚拟化技术,各有优缺点,适用于不同的使用场景。详细比较如下:

特性 WSL 2 Hyper-V
定义 提供 Linux 子系统,允许直接运行完整 Linux 内核 Windows 的完整虚拟化技术,用于运行虚拟机和服务
虚拟化方式 较轻量的虚拟化,基于虚拟机的 Linux 内核(使用 VM 技术) 完整虚拟机,每个虚拟机拥有独立的资源和内核
内核 直接使用微软提供的 Linux 内核版本 完全分离的操作系统(可以运行多种操作系统)
资源使用 更高效,内存和 CPU 分配动态调整 固定资源分配(根据虚拟机设置)
用户体验 更接近本地 Linux 环境,深度集成 Windows 完全独立,与 Windows 隔离

在资源有限的情况下,考虑到后期开发中,要通过开发工具打包 docker 镜像,WSL 2 就成为了更优之选。它能在 Windows 系统内高效运行 Ubuntu,不仅节省资源,还能无缝对接 Windows 开发环境,为后续镜像打包等操作提供极大便利,有效提升开发效率。

二、 安装 WSL2

1. BIOS开启虚拟化

Windows机器需要支持虚拟化,并且需要在BIOS中开启虚拟化技术,因为WSL2基于Hyper-V 。但是具体安装WSL2不需要额外安装Hyper-V因为WSL2中包含了Hyper-V虚拟化技术。
(进入BIOS,选择Configuration选项,选择 Intel Virtual Technology。不同品牌的机器有不同的设置界面,根据具体情况自行设置,不再详细说明。)

2. 查看先决条件

Windows 10 版本 2004 及更高版本(内部版本 19041 及更高版本)或 Windows 11 才能使用命令安装 。 如果使用的是更早的版本需要手动安装。
以管理员身份打开 PowerShell(“开始”菜单 >“PowerShell” >单击右键 >“以管理员身份运行”),然后输入以下命令&#x

### 大模型对齐微调DPO方法详解 #### DPO简介 直接偏好优化(Direct Preference Optimization, DPO)是一种用于改进大型语言模型行为的技术,该技术通过结合奖励模型训练和强化学习来提升训练效率与稳定性[^1]。 #### 实现机制 DPO的核心在于它能够依据人类反馈调整模型输出的概率分布。具体来说,当给定一对候选响应时,DPO试图使更受偏好的那个选项具有更高的生成概率。这种方法不仅简化了传统强化学习所需的复杂环境设置,而且显著增强了模型对于多样化指令的理解能力和执行精度[^2]。 #### PAI平台上的实践指南 为了便于开发者实施这一先进理念,在PAI-QuickStart框架下提供了详尽的操作手册。这份文档覆盖了从环境配置直至完成整个微调流程所需的一切细节,包括但不限于数据准备、参数设定以及性能评估等方面的内容。尤其值得注意的是,针对阿里云最新发布的开源LLM——Qwen2系列,文中给出了具体的实例说明,使得即使是初次接触此类工作的用户也能顺利上手。 ```python from transformers import AutoModelForCausalLM, Trainer, TrainingArguments model_name_or_path = "qwen-model-name" tokenizer_name = model_name_or_path training_args = TrainingArguments( output_dir="./results", per_device_train_batch_size=8, num_train_epochs=3, ) trainer = Trainer( model_init=lambda: AutoModelForCausalLM.from_pretrained(model_name_or_path), args=training_args, train_dataset=train_dataset, ) # 假设已经定义好了train_dataset trainer.train() ``` 这段代码片段展示了如何使用Hugging Face库加载预训练模型并对其进行微调的过程。虽然这里展示的例子并不完全对应于DPO的具体实现方式,但它提供了一个基础模板供进一步定制化开发之用[^3]。
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值