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 daemon-reload sudo systemctl enable set-apparmor-restrict.service sudo systemctl start set-apparmor-restrict.service


如果您将来不需要该服务文件,可以禁用并删除它:

禁用方法:

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 来简化容器创建、管理等任务。

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

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

相关文章

mybatis-sql实战总结

mybatis-sql实战总结 动态条件查询怎么List遍历集合进行拼接? 动态条件查询 动态条件查询总结 注意点: 1.可以用where 11 也可以用 防止出现后面没有条件的情况 2.模糊查询用concat拼接 A.SSTRING10 like concat(#{adAccEntrie.sstring10},‘%’) 3. 对于…

Python正则表达式中的分组

表达式中的分组 它是可以通过" () “来进行分组,更专业的表达就是捕获组,每个完整的” () “可以分为一组,同时,” () “中还可以嵌套” () ",即组之间还可以存在更小的组 概念 1、当我们在一个正则表达式…

最短路径算法——A*算法

A*算法是静态路网中求解最短路径最有效的直接搜索算法,也是解决许多搜索问题的有效算法,广泛应用于机器人路径搜索、游戏动画路径搜索等。它是图搜索算法的一种。 A*算法是一种启发式的搜索算法,它是基于深度优先算法(Depth First Search, D…

pgsql-使用dump命令制作数据库结构、数据快速备份bat脚本

一、背景 通过pgsql的dump命令可以快速的做数据库表结构、表数据的备份,随着业务不断的增加单库单实例已经不能满足业务需要。技术人员是比较懒惰的,每次敲相同命令或是无脑的复制黏贴操作感觉都是对精神的一种摧残,解决摧残的方法就是把命令…

脑肿瘤有哪些分类? 哪些人会得脑肿瘤?

脑肿瘤,作为一类严重的脑部疾病,其分类复杂多样,主要分为原发性脑肿瘤和脑转移瘤两大类。原发性脑肿瘤起源于颅内组织,常见的有胶质瘤、脑膜瘤、生殖细胞瘤、颅内表皮样囊肿及鞍区肿瘤等。其中,胶质瘤作为最常见的脑神…

dict 之ai学习

我的代码: k["name","age","job"] v1["zhangsan",25,"programmer"] v2["lisi",33,"worker"] v3["wangwu",55,"scientist"] s4dict(zip(k,v1,v2,v3)) for key,valu…

Java 零基础自学,如何系统全面地自学 Java 语言?

粉丝问:他只是一个普通人,初识Java,真的很想学好它。但是现在却只是在网上课堂上看Java基础课程(入门知识,面向对象,常用类,异常等等)看着看着就发现一头雾水,没有方向&a…

nodejs学习之process.env.NODE_ENV

简介 process对象是 Node 的一个全局对象,提供当前 Node 进程的信息。它可以在脚本的任意位置使用,不必通过require命令加载。该对象部署了EventEmitter接口。 process.env 属性返回包含用户环境的对象 使用 pnpm init新建index.js const { env } r…

【C++】类和对象(二)

个人主页 创作不易,感谢大家的关注! 文章目录 ⭐一、类的默认成员函数💎二、构造函数⏱️三、析构函数🏝️ 四、拷贝构造函数🎄五、赋值运算符重载🏠六、取地址运算符重载🎉const成员 ⭐一、类…

系统架构设计师教程 第3章 信息系统基础知识-3.7 企业资源规划(ERP)-解读

系统架构设计师教程 第3章 信息系统基础知识-3.7 企业资源规划(ERP) 3.7.1 企业资源规划的概念3.7.2 企业资源规划的结构3.7.2.1 生产预测3.7.2.2 销售管理(计划)3.7.2.3 经营计划(生产计划大纲)3.7.2.4 …

C语言 | Leetcode C语言题解之第240题搜索二维矩阵II

题目&#xff1a; 题解&#xff1a; bool searchMatrix(int** matrix, int matrixSize, int* matrixColSize, int target){int i 0;int j matrixColSize[0] - 1;while(j > 0 && i < matrixSize){if(target < matrix[i][j])j--;else if(target > matrix[…

ORBSLAM3 ORB_SLAM3 Ubuntu18.04 ROS Melodic 虚拟镜像 下载

build.sh 和 build_ros.sh编译结果截图&#xff1a; slam测试视频&#xff1a; orbslam3 ubuntu18.04 test 下载地址&#xff08;付费使用&#xff0c;不能接受请勿下载&#xff09;&#xff1a; 链接&#xff1a;https://pan.baidu.com/s/13YeJS4RGa3fBrG8BKfPbBw?pwds6vg 提…

Docker 运维常用命令及问题案例

目录 以下是一些常见的 Docker 命令&#xff1a; 镜像相关&#xff1a; 容器相关&#xff1a; 数据卷相关&#xff1a; 网络相关&#xff1a; 其他&#xff1a; 常见问题案例&#xff1a; 案例一&#xff1a;容器无法启动 案例二&#xff1a;容器性能问题 案例三&…

运维 | Linux 系统中 MySQL 的安装与使用记录

Linux 系统中 MySQL 的安装与使用记录 介绍 基本信息 在 Linux 系统中&#xff0c;MySQL 是一种常用的关系型数据库管理系统。 MySQL 默认安装位置&#xff1a;/var/lib/mysql 检查默认安装位置&#xff1a; which mysql该命令将显示 MySQL 二进制可执行文件的路径。在大…

python--实验15 数据分析与可视化

目录 知识点 1 数据分析概述 1.1流程 1.2定义 1.3数据分析常用工具 2 科学计算 2.1numpy 2.1.1定义 2.1.2创建数组的方式 2.1.3np.random的随机数函数 3 数据可视化 3.1定义 3.2基本思想 3.3Matplotlib库 3.3.1模块 4 数据分析 4.1Pandas 4.2数据结构 4.3基…

伪原创文章生成器软件,为你自动写作文章效率高

在当今快节奏的数字化时代&#xff0c;内容创作的需求如潮水般涌来。无论是博主们需要频繁更新的优质博文&#xff0c;还是企业宣传需要的大量文案&#xff0c;亦或是学者们的研究成果阐述&#xff0c;都对写作的效率提出了极高的要求。而就在这时&#xff0c;伪原创文章生成器…

软件测试点

案例&#xff1a; 需求&#xff1a; 动物品系&#xff1a;动物类型-动物品系体重&#xff1a;[1,无穷)年龄&#xff1a; 等价类&#xff1a;6个 界面测试&#xff1a; 默认值、颜色、布局动物品系下拉框&#xff0c;数据来源&#xff0c;排序规则 功能测试&#xff1a; …

Python游戏开发之制作捕鱼达人游戏-附源码

制作一个简单的“捕鱼达人”游戏可以使用Python结合图形界面库&#xff0c;比如Pygame。Pygame是一个流行的Python库&#xff0c;用于创建视频游戏&#xff0c;它提供了图形、声音等多媒体的支持。以下是一个基础的“捕鱼达人”游戏框架&#xff0c;包括玩家控制一个炮台来射击…

Java并发编程与高并发解决方案笔记

本课程将结合大量图示及代码演示&#xff0c;带你掌握多线程并发编程&#xff08;线程安全&#xff0c;线程调度&#xff0c;线程封闭&#xff0c;同步容器等&#xff09;与高并发处理思路与手段&#xff08;扩容&#xff0c;缓存&#xff0c;队列&#xff0c;拆分等&#xff0…

Linux—KVM虚拟化中(虚拟机克隆,快照,还原,删除)等应用实例

&#x1f3e1;作者主页&#xff1a;点击&#xff01; &#x1f427;Linux基础知识(初学)&#xff1a;点击&#xff01; &#x1f427;Linux高级管理防护和群集专栏&#xff1a;点击&#xff01; &#x1f510;Linux中firewalld防火墙&#xff1a;点击&#xff01; ⏰️创作…