Ubuntu 24.04 LTS Noble安装Docker Desktop简单教程
Docker 为用户提供了在 Ubuntu Linux 上快速创建虚拟容器的能力。但是,那些不想使用命令行管理容器的人可以在 Ubuntu 24.04 LTS 上安装 Docker Desktop GUI,本教程将提供用于设置 Docker 图形用户界面的命令……
Docker Desktop 是一个易于使用的集成容器管理环境,为 Docker 提供图形用户界面 (GUI)。
我们需要一些特殊的东西来遵循本教程吗?
好吧,要遵循本教程,我们需要 Ubuntu 24.04 Noble Linux 或任何其他版本,例如 Ubuntu 22.04、20.04、18.04…除此之外,用户必须具有 sudo 访问权限才能安装软件包或访问 root 用户的权限。下载软件包时,必须有活动的互联网连接。
注意:如果没有Ubuntu 24.04服务器,可以考虑雨云,1元即可试用,需要绑定微信,支持多种Linux发行版。地址是:www.ecscoupon.com/rainyun
步骤 1:Ubuntu 24.04 软件包更新
在可通过按Ctrl+Alt+T快捷方式访问的命令终端上,运行系统更新和升级命令以升级现有软件包并安装最新的可用安全更新。
sudo apt update && sudo apt upgrade
另外,安装一些常见的依赖项:
sudo apt install apt-transport-https ca-certificates curl software-properties-common -y
注意:如果您的Ubuntu 24.04上尚未安装 Docker,则只需按照第 2 步、第 3 步和第 4 步操作,而其余只想安装 Docker Desktop GUI 的用户可以直接跳至第 5 步。
第 2 步:添加 Docker 的官方 GPG 密钥
最新版本的 Docker 无法通过 Ubuntu 24.04 的默认系统存储库进行安装。因此,我们必须添加 Docker 的官方存储库,但在此之前,请将其 GPG 密钥添加到您的系统:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
步骤 3:设置 Docker 存储库
添加 GPG 密钥后,让我们将 Docker 存储库添加到我们的 Ubuntu 24.04 APT 源:
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
运行系统更新命令,刷新软件包列表。
sudo apt update
步骤4:安装Docker引擎
现在,我们可以使用默认的 APT 包管理器来获取和安装在 Ubuntu 24.04 Linux 上安装 Docker 的包。
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
检查Docker Engine的服务状态:
完成上述命令后,检查并确认 Docker 服务正在运行且没有产生任何错误:
systemctl status docker --no-pager -l
第 6 步:在 Ubuntu 24.04 中安装 Docker Desktop
与引擎不同,Docker Desktop GUI 工具不能通过我们在步骤 3中添加的存储库下载,因此,我们需要从Docker 的官方网站下载 .deb 包,访问链接并单击“ Debian ”。

获得 Docker Desktop Deb 二进制文件后,转到命令终端,然后首先切换到Downloads目录。这是因为我们从浏览器获取的任何内容都会进入该目录。
cd Downloads
现在,检查下载的Docker Desktop 文件是否存在。
ls
如果文件存在,则运行给定的命令来安装它。
sudo apt install ./docker-desktop-*-amd64.deb
(可选)安装完成后,可以删除下载的 Debian 二进制文件以释放存储空间:
rm docker-desktop-*-amd64.deb
可以忽略此警告并转到下一步:
N: Download is performed unsandboxed as root as file '/home/linuxshout/docker-desktop-4.30.0-amd64.deb' couldn't be accessed by user '_apt'. - pkgAcquire::Run (13: Permission denied)
步骤 7:启动 Docker Desktop
要在 Ubuntu 24.04 上启动 Docker Desktop,请单击 Dock 上的“显示应用程序”图标或按键盘上的 Window 键。Ubuntu 上安装的所有应用程序都会出现,搜索Docker Desktop,当您看到其快捷方式图标时,单击以运行它。
然而,有一个问题:撰写本文时,Docker尚不支持Ubuntu 24.04 ,因此 Docker Desktop 将无法启动。这是因为 Ubuntu 开发人员在最新的 24.04 Noble 版本中进行了更改。在此最新的 Ubuntu 版本中,它限制了非特权命名空间。
因此,为了解决这个问题,我们必须至少运行一次给定的命令:
sudo sysctl -w kernel.apparmor_restrict_unprivileged_userns=0
之后重新启动 Docker Desktop 服务:
systemctl --user restart docker-desktop
现在,从应用程序区域启动 Docker Desktop 或使用给定的命令:
systemctl --user start docker-desktop

设置系统启动时自动启动:
systemctl --user enable docker-desktop
而要停止服务:
systemctl --user stop docker-desktop
- - - - - - - - - -{以下是可选操作} - - - - - - - - -
好吧,还有一件事,每当您重新启动系统时,您都必须再次运行“ sudo sysctl -w kernel.apparmor_restrict_unprivileged_userns=0 ”,直到 Docker 开发人员提供更新以支持Ubuntu 24.04。或者,你可以创建一个 systemd 服务文件,让系统执行 AppArmor 命令以允许使用非特权命名空间。
它是可选的:
sudo nano /etc/systemd/system/set-apparmor-restrict.service
添加以下内容:
[Unit]
Description=Disable AppArmor Restriction on Unprivileged User Namespaces
[Service]
Type=oneshot
ExecStart=/sbin/sysctl -w kernel.apparmor_restrict_unprivileged_userns=0
RemainAfterExit=true
[Install]
WantedBy=multi-user.target
重新加载 systemd 并启用服务:
如果您将来不需要该服务文件,可以禁用并删除它:
禁用方法:
sudo systemctl disable set-apparmor-restrict.service
sudo systemctl daemon-reload
删除服务文件:
sudo rm /etc/systemd/system/set-apparmor-restrict.service
sudo systemctl daemon-reload
步骤 8. 登录 Docker Desktop(HUB)
要从 Docker Dashboard 或 Docker 菜单登录 Docker Hub 帐户,Docker Desktop 应用程序依赖于将pass凭据存储在 gpg2 加密文件中。因此,我们首先需要初始化,pass否则我们会在仪表板上不断收到警告。
注意:在执行给定步骤之前,http:// 请确保您已经拥有Docker Hub帐户。
转到你的终端并输入:
gpg --generate-key
之后只需提供一些名称作为用户 ID,然后提供电子邮件地址。
完成后,系统将要求您设置密码。

复制生成的密钥并与密码一起使用。
现在,你将看到一个 PUB 密钥,复制它并使用给定的命令来初始化它。
pass init paste-your-key
粘贴密钥后按 Enter 键。
下面是截图,可以让您清楚地了解。

现在,转到您的 Docker Desktop 仪表板并单击“login”按钮。

单击它时,浏览器将打开 Docker Hub 页面进行登录。输入你的官方凭证,然后单击打开链接,它将自动将您登录到桌面应用程序中的 Hub。

步骤 9.如何下载 Docker 镜像
好吧,如果您已经在使用 Docker CLI,那么您将在 Docker Desktop Linux App 上看到所有图像和容器。但是,那些完全不熟悉它的人可以使用给定的命令来提取图像并启动容器。
要在 Ubuntu 命令终端上拉取映像,请运行:
docker pull image-name
例如,如果您想拉取 Ubuntu 镜像,命令 l 将为:
docker pull ubuntu
现在,我们可以使用 Docker Desktop 的图形用户界面来管理它。选择“Images”部分,然后单击下载的 Image 前面的“Run”按钮来创建容器。

之后,为了让终端发出命令,点击容器,然后点击活动容器前面的三个点。从弹出菜单中选择“在终端中打开”即可:

结论
这些步骤不仅包括如何在 Ubuntu 24.04 上安装 Docker Desktop,还包括如何处理镜像和容器以及 Docker Hub 签名过程。现在,你可以使用 Docker Desktop Dashboard GUI 来简化容器创建、管理等任务。
相关文章:
Ubuntu 24.04 LTS Noble安装Docker Desktop简单教程
Docker 为用户提供了在 Ubuntu Linux 上快速创建虚拟容器的能力。但是,那些不想使用命令行管理容器的人可以在 Ubuntu 24.04 LTS 上安装 Docker Desktop GUI,本教程将提供用于设置 Docker 图形用户界面的命令…… Docker Desktop 是一个易于使用的集成容…...
XML 和 SimpleXML 入门教程
XML 和 SimpleXML 入门教程 XML(可扩展标记语言)是一种用于存储和传输数据的标记语言。它是一种自我描述的语言,允许用户定义自己的标签来表示数据。SimpleXML 是 PHP 中的一个扩展,用于解析和操作 XML 数据。本文将介绍 XML 和 …...
leetcode--链表类题目总结
本文作为刷题时对链表类题目的总结. 常见技巧: 引入虚拟头节点 便于处理边界情况便于对链表操作快慢双指针(判环,找环的入口等)链表逆序(推荐使用 虚拟头节点 头插法 进行逆序) 链表逆序( 头插法 虚拟头节点):链表内指定区间反转_牛客题霸_牛客网 虚拟节点:合并…...
打卡第22天------回溯算法
开始学习了,希望我可以尽快成功上岸! 一、回溯理论基础 什么是回溯法?回溯法也可以叫做回溯搜索法,它是一种搜索的方式。 回溯是递归的副产品,只要有递归就会有回溯。 回溯法的效率回溯法的本质是穷举,穷举所有可能,然后找出我们想要的答案。如果想让回溯法高效一些,可…...
Ubuntu对比两个文件内容有什么区别?
在Ubuntu(或任何基于Linux的系统)中,你可以使用多种命令行工具来比较两个文件的内容差异。以下是一些常用的方法: 1. **diff 命令**: diff 是Linux中用于比较两个文件差异的标准工具。它逐行比较文件,并显示…...
python:本机摄像头目标检测实时推理(使用YOLOv8n模型)
本文将介绍如何使用本机摄像头进行目标检测实时推理的python代码。 文章目录 一、下载YOLO权重文件二、环境配置三、完整代码 一、下载YOLO权重文件 https://github.com/ultralytics/ultralytics?tabreadme-ov-file 拉到网页最下面,选择适合的模型,下…...
Spark实时(四):Strctured Streaming简单应用
文章目录 Strctured Streaming简单应用 一、Output Modes输出模式 二、Streaming Table API 三、Triggers 1、unspecified(默认模式) 2、Fixed interval micro-batches&am…...
SpringBoot上传超大文件导致OOM,完美问题解决办法
问题描述 报错: Caused by: java.lang.OutOfMemoryError at java.io.ByteArrayOutputStream.hugeCapacity(ByteArrayOutputStream.java:123) ~[?:1.8.0_381] at java.io.ByteArrayOutputStream.grow(ByteArrayOutputStream.java:117) ~[?:1.8.0_381] at java.…...
PyTorch 的各个核心模块和它们的功能
1. torch 核心功能 张量操作:PyTorch 的张量是一个多维数组,类似于 NumPy 的 ndarray,但支持 GPU 加速。数学运算:提供了各种数学运算,包括线性代数操作、随机数生成等。自动微分:torch.autograd 模块用于…...
Java开发之LinkedList源码分析
#来自ゾフィー(佐菲) 1 简介 LinkedList 的底层数据结构是双向链表。可以当作链表、栈、队列、双端队列来使用。有以下特点: 在插入或删除数据时,性能好;允许有 null 值;查询效率不高;线程不安…...
外卖霸王餐系统架构怎么选?
在当今日益繁荣的外卖市场中,外卖霸王餐作为一种独特的营销策略,受到了众多商家的青睐。然而,要想成功实施外卖霸王餐活动,一个安全、稳定且高效的架构选择至关重要。本文将深入探讨外卖霸王餐架构的选择,以期为商家提…...
AV1技术学习:Transform Coding
对预测残差进行变换编码,去除潜在的空间相关性。VP9 采用统一的变换块大小设计,编码块中的所有的块共享相同的变换大小。VP9 支持 4 4、8 8、16 16、32 32 四种正方形变换大小。根据预测模式选择由一维离散余弦变换 (DCT) 和非对称离散正弦变换 (ADS…...
Git操作指令
Git操作指令 一、安装git 1、设置配置信息: # global全局配置 git config --global user.name "Your username" git config --global user.email "Your email"2、查看git版本号 git -v # or git --version3、查看配置信息: git…...
CSS 创建:从入门到精通
CSS 创建:从入门到精通 CSS(层叠样式表)是网页设计中不可或缺的一部分,它用于控制网页的布局和样式。本文将详细介绍CSS的创建过程,包括基本概念、语法结构、选择器、样式属性以及如何将CSS应用到HTML中。无论您是初学者还是有经验的开发者,本文都将为您提供宝贵的信息。…...
Windows 11 系统对磁盘进行分区保姆级教程
Windows 11磁盘分区 磁盘分区是将硬盘驱动器划分为多个逻辑部分的过程,每个逻辑部分都可以独立使用和管理。在Windows 11操作系统中进行磁盘分区主要有以下几个作用和意义: 组织和管理数据:分区可以帮助用户更好地组织他们的数据,…...
探索WebKit的CSS盒模型:深入理解Web布局的基石
探索WebKit的CSS盒模型:深入理解Web布局的基石 在Web开发的世界中,CSS盒模型(Box Model)是构建网页布局的核心原理。WebKit,作为Safari浏览器的渲染引擎,对CSS盒模型有着深入而精确的支持。本文将带你深入…...
c++初阶知识——string类详解
目录 前言: 1.标准库中的string类 1.1 auto和范围for auto 范围for 1.2 string类常用接口说明 1.string类对象的常见构造 1.3 string类对象的访问及遍历操作 1.4. string类对象的修改操作 1.5 string类非成员函数 2.string类的模拟实现 2.1 经典的string…...
php接口返回的json字符串,json_decode()失败,原来是多了红点
问题: 调用某个接口返回的json,json_decode()失败,返回数据为null, echo json_last_error();返回错误码 4 经过多次调试发现:多出来一个红点,预览是看不到的。 解决:要去除BOM头部 $resul…...
Python3网络爬虫开发实战(2)爬虫基础库
文章目录 一、urllib1. urlparse 实现 URL 的识别和分段2. urlunparse 用于构造 URL3. urljoin 用于两个链接的拼接4. urlencode 将 params 字典序列化为 params 字符串5. parse_qs 和 parse_qsl 用于将 params 字符串反序列化为 params 字典或列表6. quote 和 unquote 对 URL的…...
el-image预览图片点击遮盖处关闭预览
预览关闭按钮不明显 解决方式: 1.修改按钮样式明显点: //el-image 添加自定义类名,下文【test-image】代指 .test-image .el-icon-circle-close{ color:#fff; font-size:20px; ...改成很明显的样式 }2.使用事件监听,监听当前遮…...
GEMM内核与MHA中的寄存器分配优化策略
1. GEMM内核与寄存器分配基础解析通用矩阵乘法(GEMM)作为深度学习计算的核心算子,其性能表现直接决定了神经网络训练和推理的效率。在硬件层面,寄存器分配的优劣往往能带来数倍的性能差异。我们以典型的GEMM运算C αAB βC为例&…...
DeepSeek系统设计辅助:如何在48小时内完成可审计、可回滚、可压测的AI服务架构图?
更多请点击: https://intelliparadigm.com 第一章:DeepSeek系统设计辅助 DeepSeek系统设计辅助模块面向架构师与后端工程师,提供模型能力调用、接口契约生成、异步任务编排等核心支撑能力。该模块不替代人工设计决策,而是通过结构…...
智能手机相机光谱特性测量与多光谱成像技术
1. 智能手机相机光谱特性测量基础智能手机相机的光谱灵敏度函数(Spectral Sensitivity Function, SSF)和透射率函数是计算摄影领域的核心参数,它们决定了设备对光信号的响应特性。准确获取这些参数对色彩还原、光谱重建和白平衡校准等任务至关重要。1.1 光谱灵敏度函…...
内网环境下Win7系统批量离线补丁部署实战指南
1. 内网Win7补丁部署的挑战与解决方案老旧Win7系统在内网环境中的安全隐患就像漏雨的屋顶,看似不影响日常使用,但随时可能引发严重后果。我经手过几十家单位的系统加固项目,发现这些场景存在三个典型痛点:首先是补丁来源问题&…...
[智能体-81]:工程化智能体 = 模型做脑力拆解 + 框架做流程落地。前者是决策者,后者是管理者,tools/function call是内部员工;mcp server是外部资源;
一、全角色人设 & 对应技术组件角色定位对应技术模块核心职责决策者(脑力大脑)大模型 LLM理解目标、任务拆解、逻辑判断、分支决策、内容生成,负责 “想方案、定步骤”管理者(流程总管)智能体编排框架(…...
rk35xx 通过recovery升级问题
Firefly 的 recovery 库是一个核心组件,它构建了一个独立的微型 Linux 系统,专门用于在设备主系统之外执行高可靠性的固件升级。简单来说,它的工作流程是:主系统通过命令触发,将升级指令写入特定分区并重启;…...
随机森林算法在儿童出行方式预测中的实战应用与优化
1. 项目概述:用随机森林预测孩子怎么上学做城市交通规划或者做家长接送方案的时候,你肯定想过一个问题:孩子们到底是怎么上学的?是走路、骑车、坐公交还是家长开车送?这个问题看似简单,背后却牵扯到城市规划…...
基于Arduino与nRF24L01+的无线传感器平台设计与部署指南
1. 项目概述与设计思路如果你和我一样,喜欢在阳台或者小院子里种点蔬菜瓜果,那你肯定也遇到过这样的烦恼:出门几天,心里总惦记着家里的番茄苗是不是缺水了,小温室里的温度会不会太高。传统的温湿度计只能让你在现场读数…...
打造XBEE封装BLE112蓝牙模块:硬件设计、射频布局与调试全攻略
1. 项目概述:为什么我们需要一个“XBEE格式”的蓝牙模块?在嵌入式开发和物联网项目中,无线通信模块的选择往往决定了项目的成败。对于很多工程师和创客来说,Silicon Labs(芯科科技)的BLE112/113模块是蓝牙4…...
AWS DevOps Agent 完全指南
AWS DevOps Agent 是 AWS 推出的前沿 AI 运维代理,自主调查和解决事件、持续预防故障、提升系统可靠性。本文档覆盖从原理到实战的全生命周期管理。 一、定位与价值 一句话定义 AWS DevOps Agent = AI 驱动的 SRE 队友,724 自主调查告警、定位根因、生成修复方案、预防未来…...
