#yyds干活盘点#3.Docker安装

3. Docker安装
3.1. Docker的基本组成

镜像(images):

docker镜像就好比一个模版,可以通过这个模版来创建容器服务

通过这个镜像可以创建多个容器(最终服务运行或者项目运行就是在容器中的)

容器(containers):

Docker利用容器技术,独立运行一个或一组应用,通过镜像来创建的。

启动、停止、删除,这些都是基础命令。

目前就可以把这个容器理解为一个简易的Linux系统。

仓库(repository):

仓库就是存放镜像的地方。

仓库分为私有仓库和公有仓库。

国外的Docker仓库:Docker Hub

国内的Docker仓库:阿里云、华为云、腾讯云都有容器服务器,使用国内的容器服务器,需要配置镜像加速!
3.2. Docker安装

 环境准备

1、需要会一点点的Linux基础

2、CentOS 7

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

环境查看

# 系统内核是3.10以上的
[root@localhost ~]# uname -r
3.10.0-1160.el7.x86_64
# 系统版本
[root@localhost ~]# 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/get-docker/

# 1.卸载旧的版本
sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine
# 2.安装需要的安装包
sudo yum install -y yum-utils
# 3.设置镜像的仓库--------这里官方给出的地址是国外的,下载非常慢,不要用这个地址
sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo #这里官方给出的地址是国外的,下载非常慢,不要用这个地址
sudo yum-config-manager \
    --add-repo \
    http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo #建议使用阿里云的地址

# 更新软件包索引
yum makecache fast
# 4.安装docker   docker-ce 社区版  docker-ee 企业版
sudo yum install docker-ce docker-ce-cli containerd.io

# 5.启动docker
sudo systemctl start docker
# 或  sudo service docker start
# 6.使用docker version命令 查看是否启动成功
[root@localhost ~]# docker version
Client: Docker Engine - Community
 Version:           20.10.11
 API version:       1.41
 Go version:        go1.16.9
 Git commit:        dea9396
 Built:             Thu Nov 18 00:38:53 2021
 OS/Arch:           linux/amd64
 Context:           default
 Experimental:      true

Server: Docker Engine - Community
 Engine:
  Version:          20.10.11
  API version:      1.41 (minimum version 1.12)
  Go version:       go1.16.9
  Git commit:       847da18
  Built:            Thu Nov 18 00:37:17 2021
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.4.12
  GitCommit:        7b11cfaabd73bb80907dd23182b9347b4245eb5d
 runc:
  Version:          1.0.2
  GitCommit:        v1.0.2-0-g52b36a2
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0
[root@localhost ~]# 
 # 7.测试hello word
 sudo docker run hello-world

 # 8.查看一下下载的hello-word镜像
[root@localhost ~]# docker images
REPOSITORY    TAG       IMAGE ID       CREATED        SIZE
hello-world   latest    feb5d9fea6a5   2 months ago   13.3kB

卸载docker 

# 1.卸载掉安装的docker依赖
sudo yum remove docker-ce docker-ce-cli containerd.io
# 2.删除掉docker的容器和镜像
sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd

 /var/lib/docker是docker默认的工作路径

安装时遇到的问题

1.在centOS8系统中,使用命令yum makecache fast更新软件包索引时,会出现如下问题: 

[root@iZ8vb6lqqya4rvreq9ra6gZ ~]# yum makecache fast
usage: yum makecache [-c [config file]] [-q] [-v] [--version]
                     [--installroot [path]] [--nodocs] [--noplugins]
                     [--enableplugin [plugin]] [--disableplugin [plugin]]
                     [--releasever RELEASEVER] [--setopt SETOPTS]
                     [--skip-broken] [-h] [--allowerasing] [-b | --nobest]
                     [-C] [-R [minutes]] [-d [debug level]] [--debugsolver]
                     [--showduplicates] [-e ERRORLEVEL] [--obsoletes]
                     [--rpmverbosity [debug level name]] [-y] [--assumeno]
                     [--enablerepo [repo]] [--disablerepo [repo] | --repo
                     [repo]] [--enable | --disable] [-x [package]]
                     [--disableexcludes [repo]] [--repofrompath [repo,path]]
                     [--noautoremove] [--nogpgcheck] [--color COLOR]
                     [--refresh] [-4] [-6] [--destdir DESTDIR]
                     [--downloadonly] [--comment COMMENT] [--bugfix]
                     [--enhancement] [--newpackage] [--security]
                     [--advisory ADVISORY] [--bz BUGZILLA] [--cve CVES]
                     [--sec-severity {Critical,Important,Moderate,Low}]
                     [--forcearch ARCH] [--timer]
yum makecache: error: argument timer: invalid choice: 'fast' (choose from 'timer') 

这是因为版本问题,centos8没有该参数fast,解决办法为:去掉fast参数,就可以了 

3.3. 阿里云镜像加速

1.首先需要注册并登录阿里云官网,并找到【容器镜像服务】菜单

 

3.配置使用

sudo mkdir -p /etc/docker

sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://69dk3yy1.mirror.aliyuncs.com"]
}
EOF

sudo systemctl daemon-reload

sudo systemctl restart docker

3.4. 回顾hello-word流程

3.5. 底层原理

Docker是怎么工作的?

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

DockerServer 接收到 DockerClient的指令,就会执行这个命令!

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值