Ubuntu 24.04 LTS 安装 Docker Desktop

news2025/2/23 5:30:47

Docker 简介

  • Docker 简介和安装
  • Ubuntu上学习使用Docker的详细入门教程
  • Docker 快速入门Ubuntu版(1h速通)

Docker 安装

参考 How to Install Docker on Ubuntu 24.04: Step-by-Step Guide。

更新系统和安装依赖

在终端中运行以下命令以确保系统更新并安装必要的软件包:

sudo apt update && sudo apt upgrade -y
sudo apt install -y apt-transport-https ca-certificates curl software-properties-common
  • apt-transport-https:
    让 apt 支持通过 HTTPS 协议访问软件源(repository)。
    HTTPS 比 HTTP 更安全,常用于访问外部软件源(如 Docker 的官方源)。
  • ca-certificates:
    包含一组受信任的证书颁发机构(CA)的证书。
    确保系统能够验证 HTTPS 网站或源的合法性。
  • curl:
    一个命令行工具,用于从 URL 下载数据。
    在安装 Docker 的过程中,通常用于下载 GPG 密钥或其他依赖文件。
  • software-properties-common:
    包含管理软件源的工具,如 add-apt-repository 命令。
    方便添加 PPA(个人软件包档案)或第三方软件源
安装 Docker 引擎

Docker Desktop 需要 Docker 引擎运行:

  1. 添加 Docker 官方 GPG 密钥和存储库:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
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
  1. 安装 Docker 引擎:
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io

这条命令的作用是安装 Docker 的核心组件,使系统能够运行和管理容器。以下是每个组件的具体作用:

  • docker-ce(Docker Community Edition)
    安装 Docker 引擎 的社区版。
    Docker 引擎是一个开源容器化平台,负责管理和运行容器。
    包括核心服务(dockerd)和相关的运行时环境,支持容器的创建、管理和运行。
  • docker-ce-cli(Docker Command-Line Interface)
    安装 Docker 的命令行工具(CLI)。
    包括 docker 命令,用于与 Docker 引擎进行交互。
    提供各种子命令,例如:
    docker run:运行容器。
    docker ps:列出容器。
    docker images:管理镜像。
  • containerd.io
    安装 containerd,这是 Docker 的容器运行时组件。
    它是一个轻量级的容器运行时,负责直接与容器镜像和容器交互。
    Docker 引擎依赖 containerd 来执行低级容器管理任务,例如镜像拉取、存储管理和容器运行。

安装 Docker Compose:

sudo apt install -y docker-compose
  1. 验证 Docker 安装:
docker --version
sudo systemctl status docker
添加用户到docker组

背景知识Ubuntu linux 文件权限简介。

把当前登录的用户$USER加入到 docker 组。

sudo usermod -aG docker $USER

检查是不是加入到 docker 组

newgrp
groups 前面添加的用户名

docker 只有 docker组和root有权限,想运行不加 sudo 可以
To start running Docker commands without invoking sudo, close and start a new shell session. Alternatively, you can run the following command without closing your current session.

su -$USER
测试docker
sudo systemctl enable --now docker
sudo docker run hello-world
开机启动

查看 docker 是不是开机启动

sudo systemctl is-enabled docker

开机启动 docker

sudo systemctl enable docker
常见用法

参考 How to Install Docker on Ubuntu 24.04: Step-by-Step Guide,其文末提供了一些常见用法。

Docker Desktop 安装

  • How to Install Docker Desktop on Ubuntu 24.04 LTS
  • 官方指导Install Docker Desktop on Ubuntu
下载安装包

在Ubuntu 图形界面下,通过 Firefox浏览器在官方网站下载DEB安装包,会下载到 /home/download中。
在这里插入图片描述

我使用下面代码, 成功安装 docker desktop

sudo apt install ./Downloads/docker-desktop-amd64.deb

安装完,末尾也会报错。
N: Download is performed unsandboxed as root as file ‘/home/XXX/Downloads/docker-desktop-amd64.deb’ couldn’t be accessed by user ‘_apt’. - pkgAcquire::Run (13: Permission denied)

启用 Docker Desktop

运行以下命令以启动 Docker Desktop:

systemctl --user start docker-desktop
systemctl --user enable docker-desktop

重启你的系统以确保配置生效

sudo reboot
不要着急运行 docker Desktop

How to Install Docker Desktop on Ubuntu 24.04 LTS这篇博文说不要着急运行,可能会报错,并附带解决办法。

我直接运行没有遇到什么问题。

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

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

相关文章

Spring MVC:设置响应

目录 引言 1. 返回静态页面 1.1 Spring 默认扫描路径 1.2 RestController 1.2.1 Controller > 返回页面 1.2.2 ResponseBody 2. 返回 HTML 2.1 RequestMapping 2.1.1 produces(修改响应的 Content-Type) 2.1.2 其他属性 3. 返回 JSON 4. 设置状态码 4.1 HttpSer…

GD32F303 GCC 环境搭建

一、引言 在嵌入式开发领域,GD32F303 微控制器以其出色的性能和丰富的功能被广泛应用。为了充分发挥其潜力,搭建一个高效的开发环境并深入理解项目构建过程至关重要。本文将详细介绍如何基于 GCC 工具链搭建 GD32F303 的开发环境,重点聚焦于…

路径规划之启发式算法之二十八:候鸟优化算法(Migrating Birds Optimization, MBO)

候鸟优化算法(Migrating Birds Optimization, MBO)是一种基于群体智能的元启发式优化算法,其灵感来源于候鸟迁徙时的“V”字形飞行队列。这种队列结构能够有效减少能量消耗,同时提高飞行效率。MBO算法通过模拟候鸟的迁徙行为,利用群体间的协作和信息共享来优化问题的解。 …

ESP8266 MQTT服务器+阿里云

MQTT私有平台搭建(EMQX 阿里云) 阿里云服务器 EMQX 搭建私有MQTT平台 1、搜索EMQX开源版本 2、查看各版本EMQX支持的UBUNTU版本 3、查看服务器Ubuntu版本 4、使用APT安装模式 5、按照官网指示安装并启动 6、下载安装MQTTX测试工具 7、设置云服务…

【机器学习实战中阶】使用SARIMAX,ARIMA预测比特币价格,时间序列预测

数据集说明 比特币价格预测(轻量级CSV)关于数据集 致谢 这些数据来自CoinMarketCap,并且可以免费使用该数据。 https://coinmarketcap.com/ 数据集:链接: 价格预测器 源代码与数据集 算法说明 SARIMAX(Seasonal AutoRegressive …

Postgresql源码(140)理解PG的编译流程(make、Makefile、Makefile.global.in)

PG16 PG中使用的makefile看起来代码比较多,但是实际逻辑比较简单,这里做一些抽象总结。 总结 Makefile.global.in的$(recurse)宏自动生成了target,可以方便的进入内存目录进行编译。 all: all-common-recurse all-common-recurse: submak…

Java数据结构——优先队列

目录 引言1. 优先队列2. 优先队列的实现2.1 堆的概念2.2 堆的创建2.2.1 堆的向下调整2.3 堆的插入2.4 堆的删除 3. 总结 引言 前面一篇文章讲了二叉树,本篇将讲述数据结构中的优先队列,优先队列则需要用到完全二叉树来实现。 1. 优先队列 队列&#x…

51c大模型~合集105

我自己的原文哦~ https://blog.51cto.com/whaosoft/13101924 #刚刚,ChatGPT开始有了执行力! 现在 AI 智能体可以 24*7 小时为你打工。 2025 刚过去了半个月,OpenAI 在智能体领域「开大」了。 今天,OpenAI 正在为 ChatGPT 推出…

从零到上线:Node.js 项目的完整部署流程(包含 Docker 和 CICD)

从零到上线:Node.js 项目的完整部署流程(包含 Docker 和 CI/CD) 目录 项目初始化:构建一个简单的 Node.js 应用设置 Docker 环境:容器化你的应用配置 CI/CD:自动化构建与部署上线前的最后检查:…

《自动驾驶与机器人中的SLAM技术》ch4:基于预积分和图优化的 GINS

前言:预积分图优化的结构 1 预积分的图优化顶点 这里使用 《自动驾驶与机器人中的SLAM技术》ch4:预积分学 中提到的散装的形式来实现预积分的顶点部分,所以每个状态被分为位姿()、速度、陀螺零偏、加计零偏四种顶点&am…

Ubuntu系统更改IP,保姆级教程

原理概述 本篇文章所用工具: Xshell:点击下载 VMware Workstation Pro:点击下载 密钥需要自行搜索所下载的VMware对应版本密钥。 IP 地址 IP 地址(Internet Protocol Address)是分配给每个连接到计算机网络的设备的…

【Linux】进程管理(一篇入门-进程:基本概念、PCB进程块、进程的创建、等待、终止、状态,exec函数族的使用)

本节主要内容:进程的一些基本概念,进程控制块PCB,以及如何在一个C程序里创建进程、终止进程、等待进程,包括孤儿进程、僵尸进程等特殊状态的进程,并涉及回收进程的概念。最终是exec函数族的函数使用方法及用途。 程序与…

RabbitMQ 在实际应用时要注意的问题

1. 幂等性保障 1.1 幂等性介绍 幂等性是数学和计算机科学中某些运算的性质,它们可以被多次应⽤,⽽不会改变初始应⽤的结果. 应⽤程序的幂等性介绍 在应⽤程序中,幂等性就是指对⼀个系统进⾏重复调⽤(相同参数),不论请求多少次,这些请求对系统的影响都是相同的效果. ⽐如数据库…

EXCEL+Python搞定数据处理(第一部分:Python入门-第1章:为什么要用Python为Excel编程)

参考资料: ExcelPython飞速搞定数据分析与处理,[瑞士] 费利克斯朱姆斯坦 著,中国工信出版社、人民邮电出版社出版(“Python for Excel, by Felix Zumstein (O’Reilly). Copyright 2021 Zoomer Analytics LLC, 978-1-492-08100-5”) 将不定…

MPLS VPN 部署与应用

一.简介 MPLS,称之为多协议标签交换,在九十年代中期被提出来,用于解决传统IP报文依赖查表转发而产生的瓶颈,现多用于VPN技术,MPLS报头封装在数据链路层之上,网络层之下。本文为结合了华为技术和新华三技术…

麒麟操作系统服务架构保姆级教程(十三)tomcat环境安装以及LNMT架构

如果你想拥有你从未拥有过的东西,那么你必须去做你从未做过的事情 之前咱们学习了LNMP架构,但是PHP对于技术来说确实是老掉牙了,PHP的市场占有量越来越少了,我认识一个10年的PHP开发工程师,十年工资从15k到今天的6k&am…

67,【7】buuctf web [HarekazeCTF2019]Avatar Uploader 2(未完成版)

进入靶场 和上一题一母同胞&#xff0c;先把上一题的答案拖进去看看 区别在于上一题这块直接显示了flag&#xff0c;这里并没有 看看源码 加载不出来&#xff0c;ctrlu <!-- 上传头像的提示信息&#xff0c;说明上传要求 --><p>Please upload a PNG image less th…

QD Laser携“Lantana”激光器参展SPIE光子学西部展2025,聚焦紧凑型设计

据悉&#xff0c;QD Laser公司将在2025年SPIE光子学西部展览会上展出其最新产品——世界最小一体化紧凑型可见光激光器“Lantana”。该展会将于1月28日至30日在旧金山的Moscone中心举行。 在展会期间&#xff0c;QD Laser公司将现场展示这款超小型、轻便设备—— “Lantana”。…

63,【3】buuctf web Upload-Labs-Linux 1

进入靶场 点击pass1 查看提示 既然是上传文件&#xff0c;先构造一句话木马&#xff0c;便于用蚁剑连接 <?php eval($_POST[123])?> 上传木马 文件后缀写为.php.jpg 右键复制图片地址 打开蚁剑连接 先点击测试连接&#xff0c;显示成功后&#xff0c;再点击添加即可 …

不重启JVM,替换掉已经加载的类

不重启JVM&#xff0c;替换掉已经加载的类 直接操作字节码 使用ASM框架直接操作class文件&#xff0c;在类中修改代码&#xff0c;然后retransform就可以了 下边是BTrace官方提供的一个简单例子&#xff1a; package com.sun.btrace.samples;import com.sun.btrace.annotati…