尚硅谷Docker核心技术

目录

      • 第1课时 docker_前提知识要求和课程简介
      • 第2课时 docker_为什么会出现
      • 第3课时 docker_理念
      • 第4课时 docker_是什么?
      • 第5课时 docker_能干什么
      • 第6课时 docker_3要素
      • 第7课时 centos6安装Docker
      • centos7安装Docker
      • 第9课时 阿里云镜像加速器配置
      • 第10课时 helloworld镜像
      • 第11课时 运行底层原理
      • 第12课时 Docker帮助命令
      • ==第13课时 Docker镜像命令==
      • ==第14课时 Docker容器命令(上)==
      • ==第15课时 Docker容器命令(下)==
      • 第16课时 Docker_ 镜像原理
      • 第16课时 Docker_ 镜像原理
      • 第16课时 Docker_ 镜像原理
      • 第16课时 Docker_ 镜像原理
      • 第16课时 Docker_ 镜像原理
      • 第16课时 Docker_ 镜像原理
      • 第16课时 Docker_ 镜像原理
      • 第16课时 Docker_ 镜像原理
      • 第16课时 Docker_ 镜像原理
      • 第16课时 Docker_ 镜像原理
      • 第16课时 Docker_ 镜像原理

第1课时 docker_前提知识要求和课程简介

前置知识要求:
1、linux
2、git
在这里插入图片描述
这是看完整个课程后自己的理解呀:
client :客户端
docker build : 将容器打包成镜像
docker pull : 从docker hub 或者 阿里云上拉取镜像
docker run : 以某个镜像为模板启动容器

docker_host : 运行docker demon进程的主机
images : 镜像 类似于java中的类 是容器的模板
containers : 容器 类似java中的实例 是模板的一个具体实现
容器相当于鲸鱼背的一个一个的集装箱,容器包含了自己希望运行的软件
以及软件运行的基本环境。

第2课时 docker_为什么会出现

第3课时 docker_理念

Docker是基于Go语言实现的云开源项目。

Docker的主要目标是“Build,Ship and Run Any APP,Anywhere", 也就是通过对应用组件的封装、分发、部署、运行等生命周期的管理,使用户的APP及其运行环境能够做到一次封装,到处运行

Linux容器技术的出现就解决了这样一个问题,而Docker就是在它的基础上发展过来的。将应用程序运行在docker容器上面,而docker容器在任何操作系统上都是一致的,这就实现了跨平台、跨服务器。只要一次配置好环境,换到了别的机器上就可以一键部署

第4课时 docker_是什么?

(总结 背诵)docker 是一个容器运行的载体(或者说是管理引擎),安装完docker后,会在后台运行一个 docker的守护进程,用来监听并解析客户端发来的请求,然后对 镜像,容器和仓库进行相关操作

第5课时 docker_能干什么

1、 之前的虚拟机技术
VM: 不仅模拟了操作系统,还模拟了硬件
缺点: 资源占用多 冗余步骤多 启动慢

2、容器虚拟化技术:
由于虚拟机存在的缺点,Linux发展处另一种虚拟化技术 : Linux容器(Linux Containers,缩写为LXC)

Linux 容器不是模拟一个完整的操作系统,而是对进程进行隔离。有了容器,就可以将软件运行的所需的所有资源打包到一个隔离的容器中。容器与虚拟机不同,不需要捆绑一整套操作系统,只需要软件工程师所需要的库资源和设置。系统因此变得高效轻量 并保证部署在任何环境中的软件都能始终如一的运行

3、docker与虚拟机的区别
1)传统的虚拟机技术是虚拟出一套硬件后,在其上运行一个完整的操作系统,在该系统上再运行应用程序
2)而容器内的应用进程直接运行于宿主的内核,而容器没有自己的内核,而且也没有硬件虚拟,因此容器比虚拟机更加轻便
3)每个容器之间相互隔离,每个容器都有自己的文件系统,容器之间不会相互影响

第6课时 docker_3要素

Docker的基本组成 : docker架构图
在这里插入图片描述
镜像
Docker镜像(Image)就是一个只读的模板。镜像可以用来创建Docker容器,一个镜像可以
创建多个Docker容器
镜像 ————> 类
容器 ————> 实例

容器:软件运行的最基础的环境+软件
Docker利用容器(Container)独立运行一个或者一组应用。容器是用镜像创建的运行实例
他可以被启动、开始、停止删除。每个容器都是相互隔离的,保证安全的平台

可以把容器看成是一个简易版的Linux环境(包括root用户权限,进程空间,用户空间、网络空间)+ 运行在其中的应用程序。容器的定义和镜像几乎一模一样,也是一堆层的统一视角,唯一区别在于容器最上面的那一层是可读可写的。

仓库:
仓库(Repository) 是集中存放镜像文件的场所。
仓库 和 仓库注册服务器(Registry)是有区别的,仓库注册服务器上往往存放着多个仓库,每个仓库中存放着多个镜像,每个镜像有不同的标签(tag) (l类似于版本号)

仓库分为公开仓库 和 私有仓库
最大的公开仓库是 Docker Hub,存放了数量庞大的镜像供用户下载。国内的公开仓库包括阿里云 和 网易云等

第7课时 centos6安装Docker

centos7安装Docker

https://blog.csdn.net/hc1285653662/article/details/127721518

第9课时 阿里云镜像加速器配置

https://blog.csdn.net/hc1285653662/article/details/127721518

https://blog.csdn.net/hc1285653662/article/details/124720892

查看镜像加速器配置是否生效:
打开终端或命令提示符,以在Docker主机上执行以下命令。
运行以下命令来查看当前Docker配置:docker info
在输出信息中,查找 “Registry Mirrors”(镜像加速器)字段。如果你已经配置了镜像加速器,它应该列在这个字段下。
如果你在这个字段下看到了镜像加速器的URL(通常是以https://<加速器地址>格式),那么你已经配置了阿里云的Docker镜像加速器。
在这里插入图片描述

第10课时 helloworld镜像

1、命令:docker run hello-world
在这里插入图片描述
2:run 干了什么?
根据镜像常见并启动容器
在这里插入图片描述

第11课时 运行底层原理

1、docker是怎么工作的?
Docker是一个Client-Server结构的系统,Docker守护进程运行在主机上,然后通过SocKet连接从客户端访问,守护进程从客户端接受命令,运行并管理运行在主机上的容器。(容器,是一个运行时环境)

2、docker为什么比虚拟机快
不需要虚拟硬件,并且与宿主机共用os
1)docker有着比虚拟机更少的抽象层。由于Docker不需要实现硬件资源的虚拟化,运行在Docker上的程序直接使用的是实际物理机的硬件资源,因此在CPU,内存的利用率上,docker将会在效率上有着明显的优势

2)docker与宿主机共享OS(操作系统),
所以当新建一个容器时,docker不需要和虚拟机一样重新加载一个操作系统内核,这个过程是分钟级别的,Docker直接利用宿主机的操作系统,省略了整个过程,因此新建一个Docker只需要几秒钟 !!!

在这里插入图片描述

第12课时 Docker帮助命令

帮助命令
docver version : 查看docker的版本
docker info : 查看docker详细信息
docker --help : 查看docker的所有命令

第13课时 Docker镜像命令

1、docker images :
作用:查看所有本地的镜像
参数: docker images -a : 列出本地的所有镜像(包含中间层镜像)
docker images -q: 只显示镜像ID
docker images -qa : 获取本地所有镜像的镜像Id
docker images --digests : 显示镜像的摘要信息
docker images --no-trunc : 显示完整的镜像信息 (no truncate 别截取)
在这里插入图片描述

2、docker search 某个xx镜像的名字 (查询是在 docker.hub 上查,拉取是从阿里云拉取)
作用:在 docker.hub 上查该镜像
参数: docker search -s 30 tomat : 查看点赞数 > 30 的tomcat镜像
docker search --no-trunc tomat : 显示完整的镜像描述信息

3、docker pull xx某个镜像的名字
docker pull tomcat = docker pull tomcat:latest ==> 默认拉取最新的镜像

4、docker rmi xxx某个镜像 (remove image)(默认删除 docker rmi xxx某个镜像:latest )
docker rmi -f 镜像名
docker rmi -f 镜像ID ==>删除单个镜像
docker rmi -f 镜像名1:TAG 镜像名2:TAG ==> 删除多个镜像
docker rmi -f $(docker images -qa) ==> 删除所有的镜像

第14课时 Docker容器命令(上)

1、有镜像才能创建容器,这是根本前提

2、新建并启动容器
docker run 【options】 image 【command】【arg】
【options】:参数
在这里插入图片描述

3、列出当前正在运行的所有容器(不带任何参数)
docker ps 【options】
在这里插入图片描述

docker ps -n 3 显示最近创建的三个容器
docker ps --no -trunc 查看正在运行的容器的完整信息

4、关闭容器:
exit : 退出并关闭容器 ==》 关闭容器 指的是容器处于停止状态!!
ctrl+p+q :

5、启动容器
docker start 容器的ID
【注意】此时是没有进去交互模式的
如果要进入交互模式:
键入命令:docker exec -it 容器ID bin/bash
或者 : docker attach 容器ID

6、重启容器:
docker restart 容器的ID

7、停止容器
docker stop 容器的ID

8、强制停止容器
docker kill 容器的ID

9、删除已停止的容器
删除容器 : docker rm 已停止的容器的ID
强制删除容器: docker rm -f 容器的ID
删除本地运行的所有容器: docker rm -f $(docker ps -q -a)
或者 docker ps -a -q|xargs docker rm

第15课时 Docker容器命令(下)

1、启动守护式容器
docker run -d 镜像名
在这里插入图片描述
docker run -d --name=“centos_h” centos /bin/sh -c “while true;do echo hello zzyy;sleep 10;done”
在这里插入图片描述

2、查看容器日志
docker logs -f -t --tail 容器ID
-t 加入时间戳
-f 跟随最近的日志打印
–tail 数字显示最近的多少条

3、查看容器内部运行的进程
docker top 容器ID

4、查看容器内部细节
docker inspect 容器ID

5、进入正在运行的容器
docker attach 容器ID
docker exec -it 容器ID bin/bash

在这里插入图片描述

6、拷贝容器内的数据到主机上
docker cp 容器ID:容器内的路径(/tmp/um.log) 主机的路径(/root)

第16课时 Docker_ 镜像原理

第16课时 Docker_ 镜像原理

第16课时 Docker_ 镜像原理

第16课时 Docker_ 镜像原理

第16课时 Docker_ 镜像原理

第16课时 Docker_ 镜像原理

第16课时 Docker_ 镜像原理

第16课时 Docker_ 镜像原理

第16课时 Docker_ 镜像原理

第16课时 Docker_ 镜像原理

第16课时 Docker_ 镜像原理

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

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

相关文章

pycharm社区版创建Django项目的一种方式

pycharm社区版创建Django项目 pycharm创建New project安装django&#xff0c;如果安装过可略过安装完成后查看安装情况生成Django项目需要的文件这里注意生成语句后面的 . 不可以省略 生成文件后&#xff0c;框架搭建完成&#xff0c;配置启动我这里在配置完后&#xff0c;报了…

JAVAEE初阶相关内容第十四弹--网络初识

写在前&#xff1a; 这一部分开启网络部分的相关知识&#xff0c;这一弹内容初始网络将主要进行网络相关知识的简单介绍&#xff0c;以及着重介绍协议、协议分层、OSI七层模型、TCP/IP五层模型、封装和分用。 需要认识协议&#xff0c;并知道协议的效果是什么&#xff1b;知道…

RN(React Native)的应用程序在雷电模拟器可以运行,安卓真机运行失败问题解决记录

yarn react-native build-android打包的apk在真机安卓运行提示&#xff1a; Unable to load script . Make sure you re either running Metro ( run npx react - native start ) or that your bundle index . android . bundle is packaged correctly for release . jn…

微服务12-分布式服务理论基础+Seata的认识

文章目录 分布式服务理论基础前言微服务和分布式的区别CAP定理BASE理论 Seata流程&#xff1a;seata部署微服务集成seata 分布式服务理论基础 前言 单体架构&#xff1a; 1.项目过于臃肿&#xff0c;所有服务在一起&#xff0c;一个业务挂了&#xff0c;整个项目就不能用了&…

哪个牌子的电容笔好用?ipad触控笔推荐平价

有哪些电容笔适合学生党入手&#xff1f;苹果Pencil虽然与普通的电容笔&#xff0c;不同的是&#xff0c;这款电容笔同时具有重力传感器和倾斜传感器&#xff0c;而平替电容笔&#xff0c;只有一种倾斜传感器&#xff0c;但在书写方面的体验很不错&#xff0c;可以用来写字&…

【算法|前缀和系列No.4】leetcode238. 除自身以外数组的乘积

个人主页&#xff1a;兜里有颗棉花糖 欢迎 点赞&#x1f44d; 收藏✨ 留言✉ 加关注&#x1f493;本文由 兜里有颗棉花糖 原创 收录于专栏【手撕算法系列专栏】【leetcode】 &#x1f354;本专栏旨在提高自己算法能力的同时&#xff0c;记录一下自己的学习过程&#xff0c;希望…

如何实现前端数据持久化(LocalStorage、IndexedDB等)?

聚沙成塔每天进步一点点 ⭐ 专栏简介 前端入门之旅&#xff1a;探索Web开发的奇妙世界 欢迎来到前端入门之旅&#xff01;感兴趣的可以订阅本专栏哦&#xff01;这个专栏是为那些对Web开发感兴趣、刚刚踏入前端领域的朋友们量身打造的。无论你是完全的新手还是有一些基础的开发…

MySQL InnoDB引擎深入学习的一天(InnoDB架构 + 事务底层原理 + MVCC)

目录 逻辑存储引擎 架构 概述 内存架构 Buffer Pool Change Buffe Adaptive Hash Index Log Buffer 磁盘结构 System Tablespace File-Per-Table Tablespaces General Tablespaces Undo Tablespaces Temporary Tablespaces Doublewrite Buffer Files Redo Log 后台线程 事务原…

Hadoop 配置 Kerberos 认证

1、安装 Kerberos 服务器和客户端 1.1 规划 服务端&#xff1a; bigdata3 客户端&#xff08;Hadoop集群&#xff09;&#xff1a; bigdata0 bigdata1 bigdata2 192.168.50.7 bigdata0.example.com bigdata0 192.168.50.8 bigdata1.example.com bigdata1 192.168.50.9 b…

4.Python-用Python,Ajax实现MySQL数据库的新增数据

题记 用python&#xff0c;ajax实现mysql数据库的新增数据。以下是一个简单的实例和操作过程。 安装flask模块 pip install flask 安装mysql.connector模块 pip install mysql-connector-python 编写app.py文件 app.py文件如下&#xff1a; 块引用可能显示不完整&#x…

第15章 SpringBoot

所有的流程逻辑原理都是针对2.3.2.RELEASE版本 15.1 谈谈你对微服务架构演进的理解 难度:★ 重点:★ 白话解析 还是串主线,在串主线的过程中发现问题,解决问题。主线的入口:随着业务的逻辑越来越复杂,架构再不断升级演进,先理解架构的演进。 这道题参考了:企业IT架构转…

kantts docker化

kan-tts docker本地化 环境安装 下载docker镜像(python3.8的) registry.cn-hangzhou.aliyuncs.com/modelscope-repo/modelscope:ubuntu20.04-cuda11.8.0-py38-torch2.0.1-tf2.13.0-1.9.2 安装基础模型 pip install modelscope 安装语音模型 pip install "modelscope…

系列八、Redis的事务

一、是什么 可以一次执行多个命令&#xff0c;本质是一组命令的集合。一个事务中的所有命令都会序列化&#xff0c;按顺序地串行化执行而不会被其他命令插入&#xff0c;不允许加塞。 二、能干嘛 一个队列中&#xff0c;一次性、顺序性、排他性的执行一些列命令。 三、怎么玩…

git本地仓库及远端仓库推送【linux】

git本地仓库及远端仓库推送【linux】 一.git上创建仓库二.linux中git三板斧i.检查是否安装gitii.克隆仓库到本地iii.提交到本地仓库iiii.上传到远端仓库 三.其他内容补充git loggit status.gitignore 一.git上创建仓库 已经创建好的可以直接跳到第二步进入到创建仓库界面&…

SpringBoot + 自定义注解 + AOP 高级玩法打造通用开关

前言 最近在工作中迁移代码的时候发现了以前自己写的一个通用开关实现&#xff0c;发现挺不错&#xff0c;特地拿出来分享给大家。 为了有良好的演示效果&#xff0c;我特地重新建了一个项目&#xff0c;把核心代码提炼出来加上了更多注释说明&#xff0c;希望xdm喜欢。 案例 …

SQL注入漏洞

0x01 漏洞介绍 泛微e-office系统是标准、易用、快速部署上线的专业协同OA软件&#xff0c;国内协同OA办公领域领导品牌&#xff0c;致力于为企业用户提供专业OA办公系统、移动OA应用等协同OA整体解决方案。泛微e-office深谙改革之道以迎变革之机&#xff0c;沉心产品研发数十载…

电子笔记真的好用吗?手机上适合记录学习笔记的工具

提及笔记&#xff0c;不少人都会和学习挂钩&#xff0c;的确学习过程中我们经常会遇到很多难题&#xff0c;而经常记录笔记可以有效地帮助大家记住很多知识&#xff0c;而且时常拿出笔记查看一下&#xff0c;可方便巩固过去学习的知识。 手机作为大家日常随身携带的工具&#…

Matlab进阶绘图第31期—桑基图(Sankey Chart)

桑基图&#xff08;Sankey Chart&#xff09;本质为一种流程图&#xff0c;可以很好地展示数据的层次结构以及流量变化。 桑基图主要由节点块与流动路径线组成。 其中&#xff0c;节点块用于表示类别&#xff1b;流动路径线除了可以直观地表示流动的方向&#xff0c;其宽度还…

【EI会议征稿】第九届能源资源与环境工程研究进展国际学术会议(ICAESEE 2023)

第九届能源资源与环境工程研究进展国际学术会议&#xff08;ICAESEE 2023&#xff09; 2023 9th International Conference on Advances in Energy Resources and Environment Engineering 第九届能源资源与环境工程研究进展国际学术会议&#xff08;ICAESEE 2023&#xff09;…

补体C3/C4(C3/C4)介绍

补体是一种血清蛋白质&#xff0c;存在于人和脊椎动物血清及组织液中&#xff0c;不耐热&#xff0c;活化后具有酶活性、可介导免疫应答和炎症反应。可被抗原-抗体复合物或微生物所激活&#xff0c;导致病原微生物裂解或被吞噬。可通过三条既独立又交叉的途径被激活&#xff0c…