【500强 Kubernetes 课程】第2章 K8s必备知识 - Docker容器基础入门
Stage 1:注册阿里云账号,搜索 "容器镜像服务",并开通镜像加速器
Stage 2:修改daemon配置文件/etc/docker/daemon.json
Stage 4:查看是否生效(不生效表示你的daemon.json文件格式有问题)
一、课程介绍 + docker 容器介绍
二、docker 优缺点
-  docker-ce:社区版 (免费) 
-  docker-ee: 商业版(通常公司缺少专业运维技术人员时使用) 
2.1、优点
-  快:管理操作(启动,停止,开始,重启等等) 都是以秒或毫秒级 
-  敏捷:在 bare metal(裸机)上布署像点个按钮一样简单 
-  灵活:“容器化”,不添加额外的操作系统 
-  轻量:在一台服务器上可以布署 100~1000 个 Containers 容器 
-  便宜:开源的,免费的,低成本 
2.2、缺点
-  安全漏洞:所有容器共用 linux kernel 资源,资源能否实现最大限度利用,所以在安全上也会存在漏洞 
三、安装 和 配置 docker
四、修改内核参数 + 开机自动加载
-  多网卡的时候需要配置,通常云服务器单网卡不需要修改 
五、配置镜像加速器(见 三、安装 和 配置 docker)
六、配置常用镜像加速器站点
6.1、配置阿里云镜像加速器-(实战)
-  需要自己开通,然后修改docker配置文件即可 
Stage 1:注册阿里云账号,搜索 "容器镜像服务",并开通镜像加速器

Stage 2:修改daemon配置文件/etc/docker/daemon.json

- 执行如下命令
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://q48f1hjn.mirror.aliyuncs.com",
  "https://mirror.ccs.tencentyun.com",
  "http://registry.docker-cn.com",
  "http://docker.mirrors.ustc.edu.cn",
  "http://hub-mirror.c.163.com"],
  "insecure-registries": [
	"registry.docker-cn.com",
    "docker.mirrors.ustc.edu.cn"
  ],
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "500m"
  }
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
docker infoStage 3:重启docker,使用配置生效
systemctl restart dockerStage 4:查看是否生效(不生效表示你的daemon.json文件格式有问题)
docker info
6.2、Docker Hub 镜像加速器列表(国内)
| 镜像加速器 | 镜像加速器地址 | 使用条件 | 其它加速 | 
| Docker 中国官方镜像 | https://registry.docker-cn.com | Docker Hub | |
| DaoCloud 镜像站 | http://f1361db2.m.daocloud.io | 可登录 系统分配 | Docker Hub | 
| Azure 中国镜像 | https://dockerhub.azk8s.cn | Docker Hub、GCR、Quay | |
| 科大镜像站 | https://docker.mirrors.ustc.edu.cn | Docker Hub、GCR、Quay | |
| 阿里云 | https://<your code>.mirror.aliyuncs.com | 需登录 系统分配 | Docker Hub | 
| 七牛云 | https://reg-mirror.qiniu.com | Docker Hub、GCR、Quay | |
| 网易云 | https://hub-mirror.c.163.com | Docker Hub | |
| 腾讯云 | https ://mirror.ccs.tencentyun.com | Docker Hub | 
七、docker 基本操作
7.1、镜像相关操作
A. 从 dockerhub 查找镜像
- docker search opencv

解释说明:
-  NAME: 镜像仓库源的名称 
-  DESCRIPTION: 镜像的描述 
-  OFFICIAL: 是否 docker 官方发布 , [ok] 表示官方,非官方有安全隐患 
-  STARS: 类似 Github 里面的 star,表示点赞、喜欢的意思 
-  AUTOMATED: 自动构建 
B. 下载镜像
- docker pull victorhcm/opencv
C. 查看本地镜像
- docker images
D. 把镜像做成离线压缩包
- docker save -o /mnt/docker/opencv.tar victorhcm/opencv
E. 解压离线镜像包
-  docker load -i /mnt/docker/opencv.tar 
F. 删除镜像
-  docker rmi -f victorhcm/opencv 
-  删除单个:docker rmi -f [镜像ID] 
-  删除多个:docker rmi -f [镜像ID1] [镜像ID2] 
-  删除全部:docker rmi -f $(docker images -qa) 
7.2、容器相关操作
A. 启动并进入容器 (以交互式方式)
-  docker run --name=hello -it centos /bin/bash 
输入 exit,退出容器,退出之后容器也会停止,不会再前台运行
说明:docker run 运行并创建容器
-  --name: 容器的名字 
-  -i : 交互式 
-  -t : 分配伪终端 
-  centos: 启动 docker 需要的镜像 
-  /bin/bash: 说明你的 shell 类型为 bash, 
bash shell 是最常用的一种 shell, 是大多数 Linux 发行版默认的 shell
此外还有 C shell 等其它 shellB. 启动容器 (以守护进程方式)
-  docker run --name=hello1 -td centos 
说明:docker run 运行并创建容器
-  -t: 分配伪终端 
-  -d: 在后台运行 docker 
[root@xianchaomaster1 ~]# docker exec -it hello1 /bin/bash 进入容器
C. 查看正在运行的容器
-  docker ps 
-  docker ps -a 查看所有容器,包括运行和退出的容器 
-  docker ps|grep h 查看容器详情中包含h的容器 

D. 停止容器
-  docker stop hello1 
E. 启动容器
-  docker start hello1 启动已经停止的容器 
-  docker restart hello1 重启容器 
F. 进入容器
-  docker exec -it hello1 /bin/bash 
G. 删除容器
-  docker rm -f hello1 
H. 查看 docker 帮助命令
-  docker --help 
 
                     
                    
                 
                    
                
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号