Windows 中学习Docker环境准备2、Docker Desktop中安装ubuntu

server/2025/2/7 17:10:42/

Windows 中学习Docker环境准备1、Win11安装Docker Desktop

Windows 中学习Docker环境准备2、Docker Desktop中安装ubuntu

Windows 中学习Docker环境准备3、在Ubuntu中安装Docker

需要更多Docker学习视频和资料,请文末联系

一、安装 Docker Desktop

  1. 下载 Docker Desktop
    • 访问 Docker 官方网站,点击 “Download for Windows” 按钮下载 Docker Desktop 安装程序。
    • 如果下载速度较慢,可以尝试从 阿里云镜像源 下载。
  2. 安装 Docker Desktop
    • 双击下载的安装程序(Docker Desktop Installer.exe),按照安装向导的提示进行操作。
    • 在安装过程中,会提示你选择使用 WSL 2 还是 Hyper-V 作为后端。建议选择 WSL 2,因为它更轻量且性能更好。
    • 安装完成后,重启计算机以确保所有更改生效。
  3. 启动 Docker Desktop
    • 重启后,打开 Docker Desktop,你会在系统托盘中看到 Docker 图标。右键点击图标,选择 “Settings”。
    • 在设置中,确保 “Resources”>“WSL Integration” 中的 “Enable integration with WSL 2” 选项已启用。

二、拉取 Ubuntu 镜像

  1. 打开命令提示符或 PowerShell

    • Win + R 键,输入 cmdpowershell,然后按回车键打开命令提示符或 PowerShell。
  2. 拉取 Ubuntu 镜像

    • 使用以下命令拉取最新的 Ubuntu 镜像:

      sh复制

      docker pull ubuntu:latest
      
    • 如果你想拉取特定版本的 Ubuntu,可以将 latest 替换为版本号,例如 22.0420.04 等:

      sh复制

      docker pull ubuntu:22.04
      

三、运行 Ubuntu 容器

  1. 运行交互式容器

    • 使用以下命令运行一个交互式的 Ubuntu 容器:

      sh复制

      docker run -it --name ubuntu-container ubuntu:latest /bin/bash
      
    • 参数解释:

      • -it :以交互模式运行容器。
      • --name ubuntu-container :为容器指定一个名称(可选)。
      • ubuntu:latest :指定使用的镜像。
      • /bin/bash :在容器中启动 Bash shell。
  2. 进入容器

    • 运行上述命令后,你会进入 Ubuntu 容器的终端。此时,你可以像在普通的 Ubuntu 系统中一样操作。

四、(可选)安装桌面环境

如果你需要在容器中安装 Ubuntu 桌面环境,可以使用以下步骤:

  1. 拉取带桌面环境的镜像

    • 使用以下命令拉取 colinchang/ubuntu-desktop 镜像,这是一个基于 KasmWeb 的 Ubuntu 22.04 桌面版 Docker 镜像,预装了 Google Chrome、VSCode 等常用应用程序:

      sh复制

      docker pull colinchang/ubuntu-desktop
      
  2. 运行桌面容器

    • 使用以下命令运行容器:

      sh复制

      docker run -d -p 6901:6901 colinchang/ubuntu-desktop
      
    • 参数解释:

      • -d :以守护进程模式运行容器。
      • -p 6901:6901 :将容器的 6901 端口映射到主机的 6901 端口。
  3. 访问桌面环境

    • 打开浏览器,访问 http://localhost:6901,输入默认的用户名和密码(通常是 userpassword)登录即可访问 Ubuntu 桌面环境。

五、其他操作

  1. 查看容器列表

    • 使用以下命令查看正在运行的容器:

      sh复制

      docker ps
      
  2. 停止容器

    • 使用以下命令停止容器(将 <container_id> 替换为容器的 ID):

      sh复制

      docker stop <container_id>
      
  3. 删除容器

    • 使用以下命令删除容器:

      sh复制

      docker rm <container_id>
      
  4. 安装额外软件

    • 进入容器后,你可以使用 apt 命令安装所需的软件。例如,安装 vim 编辑器:

      sh复制

      apt update
      apt install vim -y
      
  5. 数据持久化

    • 为了确保数据不会因容器重启而丢失,可以使用 Docker Volume 进行数据持久化。例如:

      sh复制

      docker run -it -v /path/to/data:/home/user/ubuntu ubuntu:latest /bin/bash
      
    • 将主机的 /path/to/data 目录挂载到容器的 /home/user/ubuntu 目录。


http://www.ppmy.cn/server/165716.html

相关文章

uniapp商城之用户模块【会员中心】

文章目录 前言一、会员信息展示1.静态结构2.自定义导航3.渲染会员信息二、猜你喜欢分页加载1. 获取组件实例2.滚动触底事件3.加载分页数据4.封装组合式函数三、设置页的分包和预下载1. 新建分包页面2. 配置分包预下载四、退出登录总结前言 在用户登录/注册成功后,展示会员信息…

ASP.NET Core中Filter与Middleware的区别

中间件是ASP.NET Core这个基础提供的功能&#xff0c;而Filter是ASP.NET Core MVC中提供的功能。ASP.NET Core MVC是由MVC中间件提供的框架&#xff0c;而Filter属于MVC中间件提供的功能。 区别 中间件可以处理所有的请求&#xff0c;而Filter只能处理对控制器的请求&#x…

项目实操:windows批处理拉取git库和处理目录、文件

初级代码游戏的专栏介绍与文章目录-CSDN博客 我的github&#xff1a;codetoys&#xff0c;所有代码都将会位于ctfc库中。已经放入库中我会指出在库中的位置。 这些代码大部分以Linux为目标但部分代码是纯C的&#xff0c;可以在任何平台上使用。 源码指引&#xff1a;github源…

【含文档+PPT+源码】基于微信小程序农家乐美食餐厅预约推广系统

项目介绍 本课程演示的是一款基于微信小程序农家乐美食餐厅预约推广系统&#xff0c;主要针对计算机相关专业的正在做毕设的学生与需要项目实战练习的 Java 学习者。 1.包含&#xff1a;项目源码、项目文档、数据库脚本、软件工具等所有资料 2.带你从零开始部署运行本套系统 …

【玩转 Postman 接口测试与开发2_017】第13章:在 Postman 中实现契约测试(Contract Testing)与 API 接口验证(下)

《API Testing and Development with Postman》最新第二版封面 文章目录 第十三章 契约测试与 API 接口验证8 导入官方契约测试集合9 契约测试集合的详细配置9.1 env-apiKey 的创建与设置9.2 env-workspaceId 的设置9.3 Mock 服务器及 env-server 的配置9.4 API 测试实例的配置…

【EdgeAI实战】(2)STM32 AI 扩展包的安装与使用

【EdgeAI实战】&#xff08;1&#xff09;STM32 边缘 AI 生态系统 【EdgeAI实战】&#xff08;2&#xff09;STM32 AI 扩展包的安装与使用 【EdgeAI实战】&#xff08;2&#xff09;STM32 AI 扩展包的安装与使用 1. STM32Cube.AI 简介1.1 STM32Cube.AI 简介1.2 X-CUBE-AI 内核引…

spark 性能调优 (一):执行计划

在 Spark 中&#xff0c;explain 函数用于提供数据框&#xff08;DataFrame&#xff09;或 SQL 查询的逻辑计划和物理执行计划的详细解释。它可以帮助开发者理解 Spark 是如何执行查询的&#xff0c;包括优化过程、转换步骤以及它将采用的物理执行策略。 1. 逻辑计划 (Logical…

微信小程序获取openid和其他接口同时并发请求如何保证先获取到openid

在微信小程序中,如果你需要并发请求获取 openid 和其他接口的数据,并且希望确保先获取到 openid 之后再进行后续操作,可以考虑以下几种方法: 方法一:使用 Promise 链 1, 先请求 openid:使用 Promise 来请求 openid。 2, 在获取到 openid 后再请求其他接口。 function g…