ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

dcoeker学习总结(2021.11.29待完成)

2021-11-29 01:35:31  阅读:163  来源: 互联网

标签:容器 2021.11 -- 虚拟机 sudo 29 镜像 docker dcoeker


1,概述

虚拟化技术:容器(应用层)、虚拟机(软件层)

docker:隔离,镜像占用资源小,秒级
vm:GB级

docker基于Go语言开发的

image-20211128181747806

2,docker基础

2.1,架构

1

图1 架构图

镜像(image)

​ docker镜像就像一个模板,例如:redis镜像》run》redis容器(对外提供服务)

​ 一个镜像可以创建多个容器!!!

容器(container)

​ 利用容器技术独立运行一个或者一组应用,通过镜像创建

​ 启动、停止、删除

仓库(repository):类似github、gitlab代码仓库

​ 存放镜像的地方:公有仓库和私有仓库

2.2,安装docker

image-20211128200047202

图2 查看自己的服务器内核情况

image-20211128200143915

图3 通过数据库

# 1,先删除老版本
sudo apt-get remove docker docker-engine docker.io containerd runc

# 2,设置仓库
sudo apt-get update
sudo apt-get install \
    ca-certificates \
    curl \
    gnupg \
    lsb-release
    
# 3,直接进入阿里云docker加速镜像设置国内的镜像地址(https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors)
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://g8kfoxhi.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

# 4,安装docker
 sudo apt-get update
 sudo apt-get install docker-ce docker-ce-cli containerd.io

# 5,查看是否安装成功(执行hello-world程序)
docker search hello-world
docker pull hello-world
docker run hello-world

# 其他 docker的资源路径
/var/lib/docker 
# 如果想要协助该资源则可以直接
rm -rf /var/lib/docker

2.3,docker hello-world启动流程

image-20211128231100821

图4 docker镜像启动流程

2.4,底层原理

docker是怎么工作?

​ docker是一个Client-Server结构的系统,docker的守护进程运行在主机上。通过socket从客户端访问!

image-20211129000521898

图5 docker底层

docker为什么比虚拟机快?

​ 1,docker只在应用层进行抽象

​ 2,docker(秒级别)利用的是宿主机的内核,vm(分钟级别)需要Guest OS

​ 所以说,新建一个容器的时候,docker不需要像虚拟机那样重新加载一个操作系统内核,避免引导!

image-20211129000700013

图6 虚拟机与docker架构区别

image-20211129001110317

图7 docker与虚拟机的性能差异

备注:当前docker也支持全平台

2.5,docker常用命令

帮助命令

docker version		# 显示版本
docker info				# 系统信息
docker [命令] --help			# 帮忙命令

镜像命令

docker images			# 查看所有镜像

REPOSITORY 

搜索

docker search [namelike]

Options:
  -f, --filter filter   Filter output based on conditions provided
      --format string   Pretty-print search using a Go template
      --limit int       Max number of search results (default 25)
      --no-trunc        Don't truncate output

下载

docker pull [name]			# 如果不写tag,默认就是latest

Usage:  docker pull [OPTIONS] NAME[:TAG|@DIGEST]
Pull an image or a repository from a registry
Options:
  -a, --all-tags                Download all tagged images in the repository
      --disable-content-trust   Skip image verification (default true)
      --platform string         Set platform if server is multi-platform capable
  -q, --quiet                   Suppress verbose output
  
例如:
docker pull mysql
docker pull docker.io/library/mysql:latest  # 等价

删除镜像

docker rmi -f ${docker images -qa} # 删除所有
docker rmi -f [镜像id 镜像id ...] # 删除单个或多个

3,

4,

参考链接:

https://docs.docker.com/get-started/overview/

遇见狂神说-b站视频

标签:容器,2021.11,--,虚拟机,sudo,29,镜像,docker,dcoeker
来源: https://www.cnblogs.com/Mufasa/p/15617324.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有