一、Docker介绍
1、什么是docker?
答:docker是一个开源的应用容器引擎,基于Go语言并遵从Apache2协议开源。docker可以让开发者打包他们的应用以及依赖包到一个轻量级、
可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化。
2、docker和虚拟机对比?
a.实现原理技术不同,虚拟机是用来进行硬件资源划分的技术,而容器则是操作系统级别的虚拟化;
b.使用资源方面不同,虚拟机会独占分配给自己的资源,不存在资源共享,各个虚拟机之间近乎全隔离,更加重量级,也会消耗更多的资源;
docker容器与主机共享操作系统内核,不同的容器之间可以共享部分系统资源,因此更加轻量级,消耗的资源更少。
c.使用场景不同,若需要资源的完全隔离并且不考虑资源的消耗,可以使用虚拟机;若是想隔离进程并且需要运行大量进程实例,应该选择docker容器。
下图是容器和虚拟机和操作系统的关系结构图
特性 | 容器 | 虚拟机 |
---|
启动 | 秒级 | 分钟级 | 硬盘使用 | 一般为MB | 一般为GB | 性能 | 接近原生 | 弱于 | 系统支持量 | 单机支持上千个容器 | 一般几十个 |
二、Docker架构简介
1、docker的基本概念:容器,镜像,仓库。
2、容器是镜像的一个实例,镜像存在仓库中。
三、Docker常用命令
- systemctl start docker 启动docker ,前提是安装了docker
- docker version 查看docker版本信息等
- 配置国内镜像加速器,需要找到
/etc/docker/daemon.json ,添加以下内容(如果文件不存在请新建该文件): {"registry-mirrors":["https://gxeo3yz7.mirror.aliyuncs.com"]} ,然后执行sudo systemctl daemon-reload 和sudo systemctl restart docker - docker pull 镜像名[:版本号] 拉取镜像
- docker images [ls] 查看镜像列表
- docker rmi 镜像id 删除镜像
- docker -q 查看本地的镜像id
- docker ps 查看运行的容器
- docker ps -a 查看所有的容器(包含运行的和退出的)
- docker run [选项] 容器名 创建容器
- docker rm 容器id 删除容器
- docker stop $(docker ps -a -q) 停止所有容器
|