Docker——简介、安装(Ubuntu22.04)

1、简介

  • Docker 是一个开源的容器化平台,旨在简化应用程序的开发、交付和运行。它通过将应用程序及其所有依赖项打包到一个称为容器的标准化单元中,使应用程序能够在任何环境中一致地运行。Docker 解决了“在我的机器上能运行”的问题,使开发人员能够更加高效地构建和部署应用程序。
  • Docker 的主要组成部分:
    • Docker Engine:Docker 的核心组件,负责创建、管理和运行 Docker 容器。它包括三个部分:
      • Docker Daemon (dockerd):负责管理 Docker 容器的后台进程。
      • Docker CLI (docker):用于与 Docker Daemon 交互的命令行接口。
      • REST API:用于程序化地与 Docker Daemon 进行交互的接口。
    • Docker 镜像(Images):Docker 容器的只读模板,包含了应用程序及其运行环境。镜像可以通过 Dockerfile 来创建,也可以从 Docker Hub 等镜像仓库中拉取。
    • Docker 容器(Containers):镜像的实例,是一个独立运行的环境,包含应用程序及其所有依赖项。容器是轻量级且可移植的,可以在不同的主机上运行。
    • Dockerfile:定义镜像的文件,包含了一系列命令,指定了如何构建镜像。
    • Docker Hub:Docker 的官方镜像仓库,用户可以在其中发布和共享镜像。

2、安装

  • 添加Docker的官方GPG密钥,用于验证下载的软件包。
    • # 更新包列表
      sudo apt-get update
      # 安装依赖工具
      sudo apt-get install ca-certificates curl
      # 创建目录
      sudo install -m 0755 -d /etc/apt/keyrings
      # 下载Docker的GPG密钥(使用阿里云的链接)
      sudo curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
      # 设置密钥权限
      sudo chmod a+r /etc/apt/keyrings/docker.asc
  • 添加Docker库到APT源列表。
    • echo \"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] http://mirrors.aliyun.com/docker-ce/linux/ubuntu \$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
      sudo apt-get update
    • 【注】上述将Docker官网链接换为了阿里云链接。
  • 安装Docker包。
    • sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
  • 添加镜像源。
    • sudo vim /etc/docker/daemon.json
    • 添加下面内容:
      • { 
        "registry-mirrors": ["https://alzgoonw.mirror.aliyuncs.com"] 
        }
  • 保存后,重启服务。
    • sudo service docker restart
  • 将用户添加到Docker组。
    • sudo usermod -aG docker $USER
      # 重新登录以使更改生效
      newgrp docker
  • 通过运行映像来验证Docker引擎安装是否成功。
    • docker run hello-world

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

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

相关文章

【AI大模型】跌倒监控与健康:技术实践及如何改变未来

文章目录 1. **背景与意义**2. **关键技术与方法**2.1 传感器数据融合2.2 深度学习模型2.3 行为模式识别2.4 预测与预防 3. **应用场景**3.1 老年人跌倒预警3.2 康复患者监测3.3 高风险职业防护 4. **实践案例**案例1:某老年社区的跌倒预警系统案例2:康复…

Redis存储原理与数据模型

Redis存储结构 存储转换 redis-value编码 string int:字符串长度小于等于20切能转成整数raw:字符串长度大于44embstr:字符串长度小于等于44 list quicklist(双向链表)ziplist(压缩链表) hash …

意得辑ABSJU202优惠15%啦,新用户注册直减哦

不得不说,还得是意得辑,钱不白花,润色的挺好~ 第一篇SCI终于成功见刊!!! 都来接accept!!!谢谢accept小狗,接accept 求求accept小狗,真的想要双证毕…

站常用金属材料检测试题

一、单选题 1.正火采用的哪一种冷却方式( ) A.风冷 B.炉冷 C.油冷 D.空冷 参考答案:D 2.哪个合金属于弹簧钢?( ) A.20Cr B.9SiCr C.65Mn D.W18Cr4V 参考答案:C 3.T8A是什么工具钢?( ) A.碳素工具钢 B

OS-HACKNOS-2.1

确定靶机IP地址 扫描靶机开放端口信息 目录扫描 访问后发现个邮箱地址 尝试爆破二级目录 确定为wordpress站 利用wpscan进行漏洞扫描 #扫描所有插件 wpscan --url http://192.168.0.2/tsweb -e ap 发现存在漏洞插件 cat /usr/share/exploitdb/exploits/php/webapps/46537.txt…

关于QFontMetrics的使用时机

QFontMetrics 是一个非常有用的类,用于测量字体的各种属性,如文本的宽度、高度以及字符的尺寸等。它在 Qt 中的许多场景下都非常有用,特别 是在需要精确控制文本布局和绘制的情况下。以下是一些 QFontMetrics 最常用的时机: 1. …

location匹配和rewrite重定向

目录 location 匹配 location匹配的分类和优先级 优先级细分 实际网站中的使用规则 1.用精确匹配来实现网站的首页 访问网站的首页 ( /) 2.用正则匹配来实现静态请求的页面和图片 匹配静态页面 访问图片或者指定的后缀名 3.用一般匹配转发.php…

树状数组

树状数组 树状数组的核心思想:分治。将数组以二叉树的形式进行维护区间之和。 设 a a a为原数组, t r e e tree tree为树状数组。 t r e e tree tree数组用于存储树上该结点下严格直连的子节点之和(例: t [ 1 ] a [ 1 ] , t [ 2 ] t [ 1 …

SQL面试题练习 —— 连续签到领金币

目录 1 题目2 建表语句3 题解 题目来源:百度。 1 题目 有用户签到记录表,t_coin_signin,记录用户当天是否完成签到,请计算出每个用户的每个月获得的金币数量; 签到领金币规则如下: 用户签到获得1金币&…

LinearLayout的测量流程

在日常开发中我们常常使用LinearLayout作为布局Group,本文从其源码实现出发分析测量流程。大家可以带着问题进入下面的分析流程,看看是否能找到答案。 垂直测量 View的测量入口方法是onmeasure方法。LinearLayout的onMeasure方法根据其方向而做不同的处…

使用C++实现ATM系统,谈谈思路及代码实现

🏆本文收录于「Bug调优」专栏,主要记录项目实战过程中的Bug之前因后果及提供真实有效的解决方案,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&…

Android 注解的语法原理和使用方法

Android 注解的语法原理和使用方法 关于我 在 Android 开发中,注解(Annotation)是一种强大的工具,用于在代码中添加元数据。注解可以简化代码、提高可读性、减少样板代码,并且在一定程度上增强编译时的类型检查。本文…

JavaScript: 动态语言的魔法

JavaScript 是一种非常流行的编程语言,用于构建网站和网络应用程序。它是一种动态类型语言,这意味着您可以在代码运行时改变变量的类型。这篇文章将带您了解 JavaScript 的魔力,并展示一些基本概念和技巧。 1. 变量和数据类型 在 JavaScrip…

为什么需要重写equals和如何重写equals

首先先看Java中的 ,比较的两个对象的地址值。 如果是基本数据类型,那么就是比较的是值。 如果是引用数据类型,比较的就是地址. object类中的equals方法也是用的; 所以要比较两个对象的大小,去调用默认的equals方法…

前端传到后端的data数组中有些属性值为空

将前端输入框中的值全部放入data中传入后端,但是在后端查看发现后端接收到的数据有些属性值为空。 第一种情况:只有第一个属性为空,其余属性接收正常 可能原因:后端用来接收的 比如前端发送数据: 实际上前端发送的数…

[图解]SysML和EA建模住宅安全系统-13-时间图

1 00:00:00,480 --> 00:00:02,280 首先,我们来看,图画在哪里 2 00:00:02,290 --> 00:00:04,380 这个图 3 00:00:04,390 --> 00:00:06,180 你看,它是描述,刚才讲的 4 00:00:06,190 --> 00:00:09,010 描述这个活动 …

两年经验前端带你重学前端框架必会的ajax+node.js+webpack+git等技术 Day2

前端框架必会的(ajaxnode.jswebpackgit)个人学习心得作业及bug记录 Day2 你好,我是Qiuner. 为帮助别人少走弯路和记录自己编程学习过程而写博客 这是我的 github https://github.com/Qiuner ⭐️ ​ gitee https://gitee.com/Qiuner 🌹 如果本…

昇思25天打卡营-mindspore-ML- Day14-VisionTransformer图像分类

今天学习了Vision Transformer图像分类,这是一种基于Transformer模型的图像分类方法,它不依赖卷积操作,而是通过自注意力机制捕捉图像块之间的空间关系,从而实现图像分类。 基本原理: 图像分块: 将原始图像划分为多个…

C# Modbus

应用程序配置的保存 1 右键应用设置 → 属性 → 添加键值对和用户范围,应用程序和用户范围 2 获取配置参数:Properties.Settings.Default.参数名 3 修改修改参数 roperties.Settings.Default["A"] 10 最后调用 save进行保存 1.什么是modbus? 包含的内容…

Java基础---复习01

main方法 一个程序有且只有一个main方法,main方法是java程序的唯一入口。 修饰符 修饰类修饰方法修饰域public都可以访问都可以访问private私有类只能本类只能本类protected子类可以继承、访问,同包下的类也可以访问子类可以继承、访问,同…