docker学习笔记-01:docker基本原理
一、docker原理
1、什么是docker:解决了运行环境和配置问题的容器,方便做持续集成并有助于整体发布的容器虚拟化技术。
2、虚拟机的缺点:(1)资源占用多;(2)冗余步骤多;(3)启动慢,分钟级。
3、容器:容器不需要捆绑一整套操作系统,只需要打包软件工作所需的库资源和设置,可以看做是小型的、浓缩版的Linux系统。
4、容器与传统虚拟化技术的区别:
(1)容器启动更便捷:传统虚拟机技术要虚拟出一套硬件,在其上运行一个完整的操作系统,再运行所需的应用进程;而容器内的应用进程直接运行于宿主机的内核,不需要进行硬件虚拟。
(2)容器之间相互隔离:每个容器都有自己的文件系统,容器之间进程不会相互影响,能区分计算资源,耦合度低。
5、仓库:Docker Hub 官网:http://hub.docker.com
6、docker中文网站:https://www.docker-cn.com
二、docker的基本组成:镜像、容器和仓库
1、镜像和容器:
(1)docker镜像(image)就是一个只读的模板,镜像可以用来创建docker容器,一个镜像可以创建多个容器,容器是镜像的运行实例。
(2)镜像和容器的关系类似于面向对象编程中的对象和类:镜像->类,容器->对象。
(3)可以把容器看做是一个简易版的Linux环境和运行在其中的应用程序。
2、仓库和镜像:
(1)仓库是集中存放镜像文件的场所,每个仓库中包含多个镜像(来自阿里云、网易云等)。
(2)仓库分为公开仓库和私有仓库两种。
(3)最大的公开仓库是Docker Hub。
三、docker启动的基本操作命令(基于Ubuntu 18.04)
1、验证docker服务: docker run hello-world
2、查看docker版本:docker version
3、使用国内源镜像加速器:阿里云
(1)进入阿里云网站,用支付宝登录,然后找到容器镜像服务:https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors。
(2)设置好仓库的密码。
(3)找到最左下角的 “镜像加速器”:得到加速器地址:"https://vukzv72i.mirror.aliyuncs.com"
(4)在ubuntu命令终端输入:vim /etc/docker/daemon.json。打开后,把加速器地址添加进去。
(5)加速器重新加载:sudo systemctl daemon-reload 。
(6)重启docker:sudo systemctl restart docker。
(7)查看docker进程,检查配置是否生效:ps -ef | grep docker
root : ? :: /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
msg : pts/ :: grep --color=auto docker
四、docker运行的原理
1、docker如何工作:docker是一个client-server结构的系统,docker守护进程运行在主机上,然后通过socket连接从客户端访问,守护进程从客户端接收命令并管理运行在主机上的容器。
2、docker比虚拟机快的原因:docker有着比虚拟机更少的抽象层,运行在docker容器上的程序直接使用实际物理机的硬件资源。docker利用的是宿主机的内核,而不需要重新加载一个操作系统内核。因此docker在CPU、内存利用率上会有明显优势。
docker学习笔记-01:docker基本原理的更多相关文章
- DOCKER 学习笔记7 Docker Machine 在阿里云实例化ECS 以及本地Windows 实例化虚拟机实战
前言 通过以上6小节的学习,已经可以使用DOCKER 熟练的部署应用程序了.大家都可以发现使用 DOCKER 带来的方便之处,因为现在的话,只是在一台服务器上部署,这样部署,我们只需要一条命令,需要的 ...
- DOCKER 学习笔记7 Docker Machine 建立虚拟机实战,以及错误总结
前言 通过以上6小节的学习,已经可以使用DOCKER 熟练的部署应用程序了.大家都可以发现使用 DOCKER 带来的方便之处,因为现在的话,只是在一台服务器上部署,这样部署,我们只需要一条命令,需要的 ...
- Docker学习笔记2: Docker 概述
一.什么是Docker Docker是基于Go语言实现的云开源项目. Docker 的主要目标是:"Bulid,Ship and Run Any App ,AnyWhere" , ...
- Docker学习笔记之Docker的Build 原理
0x00 概述 使用 Docker 时,最常用的命令无非是 docker container 和 docker image 相关的子命令,当然最初没有管理类命令(或者说分组)的时候,最常使用的命令也无 ...
- DOCKER 学习笔记8 Docker Swarm 集群搭建
前言 在前面的文章中,已经介绍如何在本地通过Docker Machine 创建虚拟Docker 主机,以及也可以在本地Windows 创建虚拟主机,也是可以使用的.这一节,我们将继续学习 Docker ...
- Docker学习笔记(1) — docker 常用命令
1. docker version显示 Docker 版本信息.2. docker info显示 Docker 系统信息,包括镜像和容器数.3. docker searchdocker search ...
- Docker学习笔记之docker volume 容器卷的那些事(一)
预览目录 volume 方式 相关用例 使用方式 使用 volume driver bind mount 方式 相关用例 使用方式 配置selinux标签 配置macOS的安装一致性 tmpfs 方式 ...
- Docker学习笔记之Docker应用于服务化开发
0x00 概述 上一节里我们谈到了小型的独立项目如何使用 Docker Compose 来搭建程序的运行环境,对于由多人或多部门参与的中大型服务化架构的项目,仅由一个 Docker Compose 项 ...
- Docker学习笔记之Docker的数据管理和存储
0x00 概述 数据是应用程序重要的产出,所以很好的管理和存储数据,是对应用程序劳动结果的尊重.特别是在大数据时代,所有的数据都是重要的资产,保护好数据是每个开发者必须掌握的技能.我们知道,在 Doc ...
随机推荐
- PHP的isset()、is_null、empty()使用总结
这几个变量判断函数在PHP开发中用的其实挺多的,而且粗看上去都差不多,但其实还是有不少的区别的,如果搞不清楚,也许就会遗留一些潜在的bug, 包括我自已也遇到过这样的坑,比如有一次我就遇到过用empt ...
- 利用DFS算出有多少个连通图
以下面一个题目为例,[题目链接]: https://www.luogu.com.cn/problem/P4961 题目中涉及求出八联通图的个数,这里给出这步的代码: memset(vis, 0, si ...
- Tesseract-OCR 4.1.0 安装和使用— windows及CentOS
OCR(Optical character recognition) —— 光学文字识别,是图像处理的一个重要分支,中文的识别具有一定挑战性,特别是手写体和草书的识别,是重要和热门的科学研究方向 截止 ...
- selenium webdriver 小计
getText(),获得标签内文本 getAttribute("title")获得对应的html属性值
- 登陆页面Sql注入(绕过)
如图,看到这道题的时候发觉之前做过一个类似的手工注入: 不过这次手注会失败,后台过滤了sql语句里的一些东西,但我们并不知道过滤了什么 到这里我就基本上没辙了,不过查询了资料以后发现sqlmap可以对 ...
- Django--redis 保存session
pipenv install django-redis settings.py: # 作为 cache backend 使用配置 使用redis保存session CACHES = { "d ...
- Caffe2 的基本数据结构(Basics of Caffe2 - Workspaces, Operators, and Nets)[4]
这篇文章主要介绍Caffe2的基本数据结构: Workspaces Operators Nets 在开始之前最好先阅读以下Intro Turorial 首先,导入caffe2.其中core和works ...
- 【PAT甲级】1012 The Best Rank (25 分)
题意: 输入两个整数N,M(<=2000),接着分别输入N个学生的ID,C语言成绩,数学成绩和英语成绩. M次询问,每次输入学生ID,如果该ID不存在则输出N/A,存在则输出该学生排名最考前的一 ...
- js对数字的处理:取整、四舍五入、数字与字符串的转换
取整.四舍五入 向下取整Math.floor() 向上取整Math.ceil() 四舍五入Math.round()) 保留有效数位n.toFixed() 产生大于等于0小于1的随机数Math.rand ...
- AtCoder agc007_d Shik and Game
洛谷题目页面传送门 & AtCoder题目页面传送门 有\(1\)根数轴,Shik初始在位置\(0\).数轴上有\(n\)只小熊,第\(i\)只在位置\(a_i\).Shik每秒可以向左移动\ ...