docker安装

安装Docker

环境准备

1、需要会点linux的基础

2、CentOS 7

3、我们使用Xshell连接远程服务器进行操作!

查看环境

# 系统内核是3.10
[root@iZwz941qZ ~]# uname -r
3.10.0-1062.18.1.el7.x86_64
[root@iZw1qZ ~]# uname -r
3.10.0-1062.18.1.el7.x86_64
[root@iZwz94cw1gup8aldclit1qZ ~]# 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"

安装

帮助文档

# 1.卸载旧的版本
$ sudo yum remove docker 
                  docker-client 
                  docker-client-latest 
                  docker-common 
                  docker-latest 
                  docker-latest-logrotate 
                  docker-logrotate 
                  docker-engine
# 2.需要的安装包
yum install -y yum-utils

# 3.设置镜像的仓库
$ sudo yum-config-manager 
    --add-repo 
    https://download.docker.com/linux/centos/docker-ce.repo # 默认是国外的
    
yum-config-manager 
    --add-repo 
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo # 阿里云

# 更新yum软件包索引
yum makecache fast


# 5.安装docker 相关的内容  docker-ce社区版  ee企业版
yum install docker-ce docker-ce-cli containerd.io


# 6.启动docker
systemctl start docker


![](https://img2020.cnblogs.com/blog/1898315/202008/1898315-20200803203309490-479907139.png)



# 注意需要启动进行以下一系列的操作
# 不然会报 Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
# 查看版本
[root@iZwz94clit1qZ /]# docker version
Client: Docker Engine - Community
 Version:           19.03.11
 API version:       1.40
 Go version:        go1.13.10
 Git commit:        42e35e61f3
 Built:             Mon Jun  1 09:13:48 2020
 OS/Arch:           linux/amd64
 Experimental:      false

Server: Docker Engine - Community
 Engine:
  Version:          19.03.11
  API version:      1.40 (minimum version 1.12)
  Go version:       go1.13.10
  Git commit:       42e35e61f3
  Built:            Mon Jun  1 09:12:26 2020
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.2.13
  GitCommit:        7ad184331fa3e55e52b890ea95e65ba581ae3429
 runc:
  Version:          1.0.0-rc10
  GitCommit:        dc9208a3303feef5b3839f4323d9beb36df0a9dd
 docker-init:
  Version:          0.18.0
  GitCommit:        fec3683


# 8、查看一下下载的这个 hello-world 镜像
[root@iZwz94it1qZ /]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
hello-world         latest              bf756fb1ae65        5 months ago        13.3kB

了解:卸载docker

# 1.卸载依赖
yum remove docker-ce docker-ce-cli containerd.io

# 2.删除资源
rm -rf /var/lib/docker

# /var/lib/docker docker的默认路径

阿里镜像加速

1.登录阿里云找到

image-20200604151346016

2.找到镜像加速地址

image-20200604151210550

3.配置使用

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://p3jr2wkc.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker  # 启动

回顾HelloWorld流程

image-20200604151811802

Docker运行原理图:

DockerHub:是一个仓库

image-20200604153054992

底层原理

Docker是怎么工作的?

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

DockerServer接收到Docker-Client的指令,就会执行这个命令

Docker 为什么比VM快?

1、Docker有着比虚拟机更少的抽象层

2、docker利用的是宿主机的内核,vm需要的是Guest OS

image-20200604154849904

​ 所以说,新建一个容器的时候,docker不需要像虚拟机一样重新加载一个操作系统内核,避免引导,虚拟机是加载Guest OS,分钟级别的,而docker是利用宿主机的操作系统,省略复杂的过程,秒级

Docker的常用命令

帮助命令

docker version    # 显示版本信息
docker info		  # 显示docker的系统信息,包括镜像和容器数量
docker 命令 --help # 帮助命令

帮助文档的地址:https://docs.docker.com/reference/

原文地址:https://www.cnblogs.com/rzkwz/p/13428484.html