Docker基础篇——Ubuntu下Docker安装

大家好我是木木,在当今快速发展的云计算与云原生时代,容器化技术蓬勃兴起,Docker 作为实现容器化的主流工具之一,为开发者和运维人员带来了极大的便捷 。下面我们一起进行Docker安装。

Docker的官方Ubuntu安装文档,如有需要可以查看:Ubuntu |Docker 文档

本文也是根据官方文档进行安装操作。本次安装全是在线连接互联网安装的操作。

安装前的介绍

官方说的是:在新主机上首次安装 Docker Engine(又称docker-ee)之前,您需要设置 Docker 存储库。之后,您可以安装和更新 存储库中的 Docker。

实际我们个人使用安装的时候不会安装docker-ee,而是docker-ce(Docker Community Edition)。

docker-ce:免费社区版。Docker的核心功能,包含Docker 引擎负责管理容器,如容器创建、运行、管理、网络等功能,满足个人使用或者小型的生产使用。

docker-ee:收费企业版。包含Docker的核心功能,比免费社区版的功能更加的强大,还提供相应的技术支持。

安装

1、设置 Docker 的存储库

将下面一列的所有信息一行行复制,直接粘贴到系统进行执行

# Add Docker's official GPG key:
sudo apt-get update

注意:sudo apt-get update 获取最新的软件包信息,每个服务器的get不一样 只要能执行完就行。

sudo apt-get install ca-certificates curl

sudo install -m 0755 -d /etc/apt/keyrings

sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc

sudo chmod a+r /etc/apt/keyrings/docker.asc

echo \"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \$(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | \sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

sudo apt-get update

执行上面的即可,此列是做命令解析

sudo apt-get update  #更新系统软件包索引,获取最新软件包列表信息
sudo apt-get install ca-certificates curl  #安装ca-certificates(管理CA的证书)、curl(网络交互工具) 包
sudo install -m 0755 -d /etc/apt/keyrings  #创建/etc/apt/keyrings文件夹,赋予0755权限
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc #使用culr从docker中下载官方gpg秘钥,并保存到/etc/apt/keyrings/中
sudo chmod a+r /etc/apt/keyrings/docker.asc #赋予所有用于都可以/etc/apt/keyrings/docker.asc文件进行读取

# Add the repository to Apt sources:
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null  #获取当前的系统架构、信息等,将https://download.docker.com/linux/ubuntu \配置到etc/apt/sources.list.d/docker.list中
sudo apt-get update #更新系统软件包索引,获取最新软件包列表信息

如上图说明存储库配置完成并且添加了docker的软件源,后续可以安装docker相关的软件包。

2、安装docker相关的软件

sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

到此docker安装完成。

3、验证docker

docker version,能够看到client和server说明安装成功。

常见问题

1、执行sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc 出现curl: (35) OpenSSL SSL_connect: Connection reset by peer in connection to download.docker.com:443

这说明无法连接docker官网,多执行几次就好了

2、执行:sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin时出现找不到包

这说明软件源没有更新或者是网络问题GPG秘钥下载失败。

解决方法是:

方法一:重新执行 安装中第一步:“设置Docker的存储库”最好分开一行行执行。

方法二:根据下图执行,切记一行行执行,不行的话 还是重新执行方法一

sudo mkdir -p /etc/apt/keyrings

sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc

echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

sudo apt-get update

sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

再次重新安装后正常。

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

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

相关文章

3D数字化:家居行业转型升级的关键驱动力

在科技日新月异的今天,家居行业正经历着一场前所未有的变革。从传统的线下实体店铺到线上电商平台的兴起,再到如今3D数字化营销的广泛应用,消费者的购物体验正在发生翻天覆地的变化。3D数字化营销不仅让购物变得更加智能和便捷,还…

【水调歌头·排序篇】--体验快排与归并的奥妙

快排算法篇 一、快排1 .1颜色分类1.2数组中第k个最大元素 二、归并排序2.1排序数组2.2翻转对2.3交换逆序对总数 一、快排 使用快排的思想就是 将一段区域分为3段,在选取一个基准元素key。让这三段分别小于key,等于key,大于key. 1 .1颜色分类 颜色分类 …

【CV001】归一化互相关模板匹配matlab实现

Normalized Cross-Correlation (NCC) 的原理 Normalized Cross-Correlation (NCC) 是一种衡量两个信号或图像之间相似度的度量方法。它在图像处理、计算机视觉和信号处理等领域应用广泛,特别是在模板匹配(template matching)中。NCC 的目标是…

基于DeepSeek实现PDF嵌入SVG图片无损放大

1. PDF中效果图 2. 询问Deepseek进行代码书写,不断优化后结果 /*** SVG工具类,用于生成价格趋势的SVG图表*/ public class SvgUtils {// SVG画布尺寸private static final int WIDTH 800;private static final int HEIGHT 500;private static final i…

linyu-im

linyu-mini-server&#xff1a;springboot vue mysql。一款非常漂亮的linyu-im&#xff0c;它的mini版本&#xff0c;仅使用了mysql数据库 1、数据库有sqlite和mysql&#xff0c;这里修改为mysql 2、User类的badge徽章字段中使用了JacksonTypeHandler转为字符串为List<S…

提升数据库性能与可靠性:深入解析MySQL主从复制

在当今数据驱动的世界中&#xff0c;无论是初创公司还是大型企业&#xff0c;都面临着如何高效管理和保护其宝贵数据的挑战。随着业务的增长和用户需求的增加&#xff0c;单点数据库往往难以承受日益增长的负载压力&#xff0c;这就需要一种更加灵活、可靠的解决方案来确保系统…

【CVPR2025】 EVSSM:用状态空间模型高效去模糊

Efficient Visual State Space Model for Image Deblurring 论文信息 题目&#xff1a; Efficient Visual State Space Model for Image Deblurring 用于图像去模糊的高效视觉状态空间模型 源码&#xff1a;https://github.com/kkkls/EVSSM 创新点 提出了高效视觉状态空间模型…

Ubuntu虚拟机中使用QEMU搭建ARM64环境

Ubuntu虚拟机中使用QEMU搭建ARM64环境 通过本实验学习如何编译一个 ARM64 版本的内核 image&#xff0c;并且在QEMU 上运行起来。 文章目录 Ubuntu虚拟机中使用QEMU搭建ARM64环境一、安装aarch64交叉编译工具二、安装QEMU三、制作根文件系统1、根文件系统简介2、BusyBox构建根…

SQL经典查询

查询不在表里的数据&#xff0c;一张学生表&#xff0c;一张学生的选课表&#xff0c;要求查出没有选课的学生&#xff1f; select students.student_name from students left join course_selection on students.student_idcourse_selection.student_id where course_selecti…

【神经网络】python实现神经网络(一)——数据集获取

一.概述 在文章【机器学习】一个例子带你了解神经网络是什么中&#xff0c;我们大致了解神经网络的正向信息传导、反向传导以及学习过程的大致流程&#xff0c;现在我们正式开始进行代码的实现&#xff0c;首先我们来实现第一步的运算过程模拟讲解&#xff1a;正向传导。本次代…

黑金风格人像静物户外旅拍Lr调色教程,手机滤镜PS+Lightroom预设下载!

调色教程 针对人像、静物以及户外旅拍照片&#xff0c;运用 Lightroom 软件进行风格化调色工作。旨在通过软件中的多种工具&#xff0c;如基本参数调整、HSL&#xff08;色相、饱和度、明亮度&#xff09;调整、曲线工具等改变照片原本的色彩、明度、对比度等属性&#xff0c;将…

Kubernetes中的 iptables 规则介绍

#作者&#xff1a;邓伟 文章目录 一、Kubernetes 网络模型概述二、iptables 基础知识三、Kubernetes 中的 iptables 应用四、查看和调试 iptables 规则五、总结 在 Kubernetes 集群中&#xff0c;iptables 是一个核心组件&#xff0c; 用于实现服务发现和网络策略。iptables 通…

C语言_数据结构总结5:顺序栈

纯C语言代码&#xff0c;不涉及C 想了解链式栈的实现&#xff0c;欢迎查看这篇文章&#xff1a;C语言_数据结构总结6&#xff1a;链式栈-CSDN博客 这里分享插入一下个人觉得很有用的习惯&#xff1a; 1. 就是遇到代码哪里不理解的&#xff0c;你就问豆包&#xff0c;C知道&a…

STM32之ADC

逐次逼近式ADC&#xff1a; 左边是8路输入通道&#xff0c;左下是地址锁存和译码&#xff0c;可将通道的地址锁存进ADDA&#xff0c;ADDB&#xff0c;ADDC类似38译码器的结构&#xff0c;ALE为锁存控制键&#xff0c;通道选择开关可控制选择单路或者多路通道&#xff0c;DAC为…

Magento2根据图片文件包导入产品图片

图片包给的图片文件是子产品的图片&#xff0c;如下图&#xff1a;A104255是主产品的sku <?php/*** 根据图片包导入产品图片&#xff0c;包含子产品和主产品* 子产品是作为主图&#xff0c;主产品是作为附加图片*/use Magento\Framework\App\Bootstrap;include(../app/boot…

初学STM32之简单认识IO口配置(学习笔记)

在使用51单片机的时候基本上不需要额外的配置IO&#xff0c;不过在使用特定的IO的时候需要额外的设计外围电路&#xff0c;比如PO口它是没有内置上拉电阻的。因此若想P0输出高电平&#xff0c;它就需要外接上拉电平。&#xff08;当然这不是说它输入不需要上拉电阻&#xff0c;…

图像生成-ICCV2019-SinGAN: Learning a Generative Model from a Single Natural Image

图像生成-ICCV2019-SinGAN: Learning a Generative Model from a Single Natural Image 文章目录 图像生成-ICCV2019-SinGAN: Learning a Generative Model from a Single Natural Image主要创新点模型架构图生成器生成器源码 判别器判别器源码 损失函数需要源码讲解的私信我 S…

STM32之I2C硬件外设

注意&#xff1a;硬件I2C的引脚是固定的 SDA和SCL都是复用到外部引脚。 SDA发送时数据寄存器的数据在数据移位寄存器空闲的状态下进入数据移位寄存器&#xff0c;此时会置状态寄存器的TXE为1&#xff0c;表示发送寄存器为空&#xff0c;然后往数据控制寄存器中一位一位的移送数…

Git - 补充工作中常用的一些命令

Git - 补充工作中常用的一些命令 1 一些场景1.1 场景11.2 场景21.3 场景31.4 场景41.5 场景51.6 场景61.7 场景71.8 场景81.9 场景91.10 场景101.11 场景111.12 场景121.13 场景131.14 场景141.15 场景15 2 git cherry-pick \<commit-hash\> 和 git checkout branch \-\-…

AI 驱动的软件测试革命:从自动化到智能化的进阶之路

&#x1f680;引言&#xff1a;软件测试的智能化转型浪潮 在数字化转型加速的今天&#xff0c;软件产品的迭代速度与复杂度呈指数级增长。传统软件测试依赖人工编写用例、执行测试的模式&#xff0c;已难以应对快速交付与高质量要求的双重挑战。人工智能技术的突破为测试领域注…