Docker笔记1 | Docker学习和简介

简介: Docker笔记1 | Docker学习和简介

1 学习来源

  • 本系列笔记学习主要参考书籍《Docker-从入门到实践》以及结合官网的教程,仅作为个人学习使用;
  • 推荐大家阅读此书,感谢作者的书籍,学到了很多。

2 官方学习资源

3 Docker简介

3.1 Docker是什么?

  • Docker 开源的应用容器引擎,使用 Go 语言 进行开发实现;
  • 基于 Linux 内核的cgroupnamespace,以及 AUFS 类的 Union FS 等技术,对进程进行封装隔离;
  • 属于 操作系统层面的虚拟化技术;
  • 由于隔离的进程独立于宿主和其它的隔离的进程,因此也称其为容器;
  • 使用客户端-服务器 (C/S) 架构模式,使用远程 API 来管理和创建 Docker 容器;
  • 是实现容器技术的一种工具;
  • 还可以进行版本管理、复制、分享、修改,就像管理普通的代码一样。
Docker 在容器的基础上,进行了进一步的封装,从文件系统、网络互联到进程隔
离等等,极大的简化了容器的创建和维护。使得 Docker 技术比虚拟机技术更为轻
便、快捷

3.2 Docker应用场景

  • Web 应用的自动化打包和发布;
  • 自动化测试和持续集成、发布;
  • 组建微服务架构,通过多个容器,一台机器可以跑多个服务,因此在本机可以模拟出微服务架构。

3.3 Docker架构

  • 架构图:

在这里插入图片描述

架构图包含:客户端Client、Docker daemon、仓库Registry;
输入命令的工具称之为客户端Client,当在客户端输入命令时,命令会发送到docker所在主机的daemon进程,由该进程执行命令。当执行的是创建容器的命令时,如果对应的镜像不存在于本地,那么daemon会向远程docker仓库请求下载镜像,等镜像下载到本地后在创建容器。
  • 命令图:

在这里插入图片描述

3.3 Docker的优势

优势 说明
更高效的利用系统资源 不需要进行硬件虚拟以及运行完整操作系统等额外开销
更快速的启动时间 运行于宿主内核,无需启动完整的操作系统
一致的运行环境 提供了除内核外完整的运行时环境,确保了应用运行环境一致性
持续交付和部署 定制应用镜像来实现持续集成、持续交付、部署。
更轻松的迁移 在多平台上运行
更轻松的维护和扩展 分层存储以及镜像的技术

3.3 与传统虚拟机的区别

在这里插入图片描述

特性 容器 虚拟机
启动 秒级 分钟级
硬盘使用 一般为 MB 一般为 GB
性能 接近原生 弱于
系统支持量 单机支持上千个容器 一般几十个
目录
相关文章
|
2月前
|
存储 Ubuntu Linux
学习docker
学习docker
35 1
|
2月前
|
NoSQL Linux Redis
Docker学习二(Centos):Docker安装并运行redis(成功运行)
这篇文章介绍了在CentOS系统上使用Docker安装并运行Redis数据库的详细步骤,包括拉取Redis镜像、创建挂载目录、下载配置文件、修改配置以及使用Docker命令运行Redis容器,并检查运行状态和使用Navicat连接Redis。
320 3
|
2月前
|
运维 Kubernetes 开发者
Docker Swarm学习
【10月更文挑战第5天】
40 3
|
2月前
|
Kubernetes Linux 持续交付
docker容器学习
【10月更文挑战第1天】
41 1
|
3月前
|
存储 Linux Docker
CentOS 7.6安装Docker实战案例及存储引擎和服务进程简介
关于如何在CentOS 7.6上安装Docker、介绍Docker存储引擎以及服务进程关系的实战案例。
175 3
CentOS 7.6安装Docker实战案例及存储引擎和服务进程简介
|
3月前
|
存储 Ubuntu Docker
Docker学习
Docker学习
65 4
|
2月前
|
Linux 应用服务中间件 Shell
docker学习--docker容器镜像常用命令大全(简)
本文档详细介绍了Docker中的镜像命令与容器管理命令。镜像命令部分涵盖了镜像搜索、下载、上传等操作;容器管理命令则包括了容器的创建、启动、停止、删除及日志查看等功能。通过具体示例,帮助用户更好地理解和使用Docker相关命令。
179 0
|
2月前
|
Shell 应用服务中间件 nginx
docker学习--最详细的docker run 各子命令解释与应用
`docker run` 是 Docker 中用于启动容器的基本命令。常用子命令包括 `-i`(交互模式)、`-t`(分配终端)、`-d`(后台运行)、`-p`(端口映射)、`--name`(指定容器名)。例如,`docker run -it nginx:1.20 /bin/bash` 可以创建并进入交互式容器。使用 `-d` 可在后台运行容器,`-p` 可将容器端口映射到主机端口,`--name` 则用于自定义容器名称以便管理。
278 0
|
3月前
|
存储 Unix 虚拟化
Docker容器简介
Docker是一种轻量级的虚拟化技术,它通过容器化应用,提高了硬件资源利用率,简化了应用的部署、运输和运行,且与虚拟机相比,具有更快的交付速度和更低的资源消耗。
59 2
|
4月前
|
网络协议 Shell Docker
docker 学习之路
docker 学习之路
41 1