镜像(image)
容器(container)
Docker 利用容器技术,独立运行一个或者一组应用,通过镜像来创建的
Docker 可以启动,停止,删除,基本命令
可以把这个容器理解为就是一个简易的 Linux系统
仓库(repository)
环境准备
uname -r
:内核要 3.0 以上[root@bogon ~]# uname -r 3.10.0-693.el7.x86_64 [root@bogon ~]# cat /etc/os-release NAME="CentOS Linux" VERSION="7 (Core)" ID="centos" ID_LIKE="rhel fedora" VERSION_ID="7" PRETTY_NAME="CentOS Linux 7 (Core)" ANSI_COLOR="0;31" CPE_NAME="cpe:/o:centos:centos:7" HOME_URL="https://www.centos.org/" BUG_REPORT_URL="https://bugs.centos.org/" CENTOS_MANTISBT_PROJECT="CentOS-7" CENTOS_MANTISBT_PROJECT_VERSION="7" REDHAT_SUPPORT_PRODUCT="centos" REDHAT_SUPPORT_PRODUCT_VERSION="7"
安装
帮助文档:https://docs.docker.com/engine/install/
yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine
yum install -y yum-utils
yum-config-manager \ --add-repo \ https://download.docker.com/linux/centos/docker-ce.repo #默认是从国外的,不推荐 #推荐使用国内的 yum-config-manager \ --add-repo \ https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum makecache fast
#! 建议加上 -y yum install docker-ce docker-ce-cli containerd.io
systemctl start docker
docker version
docker run hello-world
至此,安装成功!
docker images
卸载 docker
yum remove docker-ce docker-ce-cli containerd.io
#! /var/lib/docker 是docker的默认工作路径! rm -rf /var/lib/docker
Docker是怎么工作的?
Docker是一个 Client-Server
结构的系统,Docker的守护进程运行在主机上。通过Socket从客户端访问!
Docker-Server接收到Docker-Client的指令,就会执行这个命令!
为什么 Docker 比 Vm 快?
因此,当新建一个容器 docker 时,docker不需要和虚拟机一样重新加载一个操作系统内核。从而避免引导、加载操作系统内核,这是个比较费时费资源的过程;当新建一个虚拟机时,虚拟机软件需要加载GuestOS,这个新建过程是分钟级别的。而docker由于直接利用宿主机的操作系统,则省略了这个复杂的过程,因此新建一个docker容器只需要几秒钟。