当前位置: 首页 > news >正文

Windows Docker安装与WSL2终极指南

一、先创建 D 盘目录

Docker与Ubuntu安装到D盘

1. 创建目录结构
在D盘新建D:\DockerD:\Ubuntu目录,分别存放Docker程序与数据。

2. 配置WSL2
以管理员身份运行PowerShell,启用WSL功能并设置默认版本为WSL2:

wsl --install -d Ubuntu wsl --set-default-version 2

3. 安装Docker Desktop
下载安装包后,通过命令行指定安装路径到D盘:

DockerDesktopInstaller.exe install --installation-dir=D:\Docker

4. 配置SSH服务
在Ubuntu子系统中安装并启动OpenSSH:

sudo apt update && sudo apt install openssh-server sudo service ssh start

5. FinalShell连接
在FinalShell中添加连接,地址为127.0.0.1,端口22,使用Ubuntu账户密码登录。

6. 迁移Ubuntu到D盘
导出WSL镜像并重新导入到D盘路径:

wsl --export Ubuntu D:\Ubuntu\ubuntu.tar wsl --import Ubuntu D:\Ubuntu D:\Ubuntu\ubuntu.tar

打开管理员 PowerShell:

New-Item -ItemType Directory -Force D:\Docker\DockerDesktop New-Item -ItemType Directory -Force D:\Docker\WSL New-Item -ItemType Directory -Force D:\Docker\MySQL

目录作用:

D:\Docker\DockerDesktop Docker Desktop 程序 D:\Docker\WSL Docker 镜像、容器、数据卷 D:\Docker\MySQL MySQL 项目文件

二、检查并安装 WSL 2

执行:

wsl --version

如果提示未安装:

wsl --install

完成后重启电脑。Docker Desktop 当前推荐使用 WSL 2 后端,并要求较新的 WSL 版本。

三、把 Docker Desktop 安装到 D 盘

设置安装包路径:

$installer = "$env:USERPROFILE\Downloads\Docker Desktop Installer.exe"

检查安装包是否存在:

Test-Path $installer

必须返回:

True

然后把下面这条命令整行复制执行

Start-Process -FilePath $installer -Wait -ArgumentList 'install','--accept-license','--backend=wsl-2','--installation-dir=D:\Docker\DockerDesktop','--wsl-default-data-root=D:\Docker\WSL'

这条命令会将:

Docker Desktop 程序:D:\Docker\DockerDesktop Docker 镜像和容器数据:D:\Docker\WSL

Docker 官方安装器支持--installation-dir修改程序目录,也支持--wsl-default-data-root修改 WSL 虚拟磁盘及容器数据目录。

安装成功后会自动弹出来docker客户端的软件,然后进行终端进行docker命令查看进程,如果是返回是空的话不会提示错误的话就说明已经安装和运行成功了

接下来就是将咱们刚才安装好的docker进行下载安装微软的SSH客户端工具然后进行连接到finalshell当中

四、下载安装微软的SSH客户端进行连接到finalshell当中

1. 打开管理员 PowerShell

检查 OpenSSH Server:

Get-WindowsCapability -Online | Where-Object Name -Like 'OpenSSH.Server*'

如果显示:

State : NotPresent

执行安装:

Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0

安装成功之后开始启动SSH的客户端和设置开机自启动

Start-Service sshd

设置开机自动启动:

Set-Service -Name sshd -StartupType Automatic

检查状态:

Get-Service sshd

正常应显示:

Status Name ------ ---- Running sshd

检查 22 端口

Test-NetConnection 127.0.0.1 -Port 22

看到:

TcpTestSucceeded : True

就代表 FinalShell 可以连接。

查看登录用户名

whoami

再执行:

$env:USERNAME

假设输出用户名是:

guoqing

先在本机测试 SSH

ssh guoqing@127.0.0.1

第一次连接输入:

yes

随后输入的是Windows账户密码,不是开机PIN码

(注意:这个密码是你电脑登录微软账号的密码不是开机的PIN码!!!)

登录之后进入软件之后的终端输入密码用户名进去之后是这样的,如下图:

到达这一步已经安装SSH客户端运行成功,接下来就是连接到finalshell当中

五、在 FinalShell 连接

打开 FinalShell,新建 SSH 连接,填写:

名称:本地 Docker 主机:127.0.0.1 端口:22 用户名:自己电脑的用户名 密码:刚才 SSH 登录成功时使用的 Windows 账户密码

连接成功以后,也会看到类似:

到达这一步,我们已经是成功一大半了,坚持一下马上搞定

(注意:现在的finalshell旁边是没有任何的数据是正常的现象,因为这个finalshell没有适配windows,下一步我们就在D盘安装Ubuntu)

六、把 Ubuntu 安装到 D 盘

打开管理员 PowerShell,执行:

wsl --set-default-version 2

创建存储目录:

New-Item -ItemType Directory -Force "D:\WSL\Ubuntu"

安装 Ubuntu,并明确指定 D 盘:

wsl --install -d Ubuntu --location "D:\WSL\Ubuntu"

当前 WSL 支持通过--location指定 Linux 发行版的安装文件夹,因此 Ubuntu 的虚拟磁盘和主要文件会存放在D:\WSL\Ubuntu

安装弹出最底下的就说明已经安装好了,最下面的是让你设置一个用户名

设置好之后底下会有让你设置密码和确认设置的密码,设置一下就完成了

然后我们把docker客户端的设置里面的WSL的这个选项打开,点击应用,如下图:

然后我们进入乌班图,如下图:

七、接下来让 FinalShell 连接 Ubuntu:

在 Ubuntu 中执行:

sudo apt update sudo apt install -y openssh-server

设置 Ubuntu SSH 使用2222端口,避开 Windows SSH 的22

sudo mkdir -p /etc/ssh/sshd_config.d printf "Port 2222\nPasswordAuthentication yes\nPermitRootLogin no\n" | sudo tee /etc/ssh/sshd_config.d/99-finalshell.conf

检查并启动:

sudo sshd -t sudo service ssh restart ss -lntp | grep 2222

看到LISTEN后,在 Windows PowerShell 测试:

Test-NetConnection 127.0.0.1 -Port 2222

显示:

TcpTestSucceeded : True

最后在 FinalShell 新建连接:

然后新建连接完成之后,会弹出一个指纹的保存直接选保存就好了,然后进去之后会变成这样,如下图:

这样我们的本地的docker安装和安装乌班图以及连接到finalshell中就已经完成了,制作不易,如果帮助到了你,可以点个关注和收藏支持一下!!!!!!!

http://www.jsqmd.com/news/1184739/

相关文章:

  • WorkBuddy AI Agent:从工具调用到工作流自动化的实战指南
  • jumamo对话管理系统:构建智能多轮交互的完整框架
  • Python数据分析三件套:NumPy、Pandas、Matplotlib零基础实战指南
  • 大语言模型中Dropout技术原理与优化实践
  • 【数据集NO.3】工业视觉实战:精选缺陷与纹理检测数据集及场景解析
  • WebXR教育AR实战:让物理化学实验跑在浏览器里
  • R语言离散概率分布实战:从场景识别到函数应用
  • AI开源与安全平衡:从技术原理到工程实践
  • 时间序列的数据分析(六): 朴素预测法的实战评估与场景选择
  • pandas多维聚合生产实践:银行级数据流水线避坑指南
  • 个性化AI Agent技术解析与应用实践
  • PowerRename正则表达式批量重命名:Windows文件管理效率提升指南
  • AI技术写作规范:如何避免虚构术语与失实标题
  • LangChain真实项目手记:PDF问答、双语翻译、维基摘要与金融合成数据实战
  • C盘清理工具使用指南:从扫描到安全清理的8个关键步骤
  • 统计显著性检验:现代实证决策的防自我欺骗操作系统
  • C++多线程编程核心陷阱:数据竞争、死锁与条件变量实战解析
  • 2026实力之选:自动化设备机架/机柜专业供应商——深圳市精图机柜网络设备有限公司 - 甄选服务推荐
  • TPA3128D2与PIC18LF46K40构建高保真D类功放实战
  • Windows系统优化工具optimizerDuck:一键提升性能与隐私保护
  • 部署工程化:版本管理、热更新与异常处理
  • ChatGPT联网搜索失败真相(企业级调试日志首次公开):从代理链路断裂到OAuth2.0 Token过期的全栈诊断路径
  • DSPy Pipeline与Compiler:构建可编译、可验证的AI工作流
  • MV-Forcing:基于4D几何桥接的多视图视频生成框架解析
  • 多模态大模型核心技术解析:从Transformer架构到工业部署实践
  • 2026年南京高淳代理记账全攻略:从公司注册到记账报税一站式指南 - 本地品牌推荐
  • Snowflake内构建LLM裁判评估发票提取准确率
  • TPS61170与PIC18F45K50实现高效DC-DC升压转换方案
  • 技术解析-从行为特征到模型判别:构建天天象棋智能反作弊系统
  • 电脑彻底清理指南:从系统工具到第三方软件的安全优化