Docker基本原理及部署操作

Docker基本原理及部署操作

  • 一、Docker概述
    • 1.Docker是什么?
    • Docker与虚拟机的区别
    • 2.Docker的使用场景
    • 3.Docker的特点
    • 4.Docker核心概念
    • 4.CentOS安装Docker的两种方式
  • 二、YUM仓库部署19版Docker
    • 1.安装依赖包
    • 2.设置阿里云镜像源
    • 3.安装 Docker-CE,关闭防火墙设置开机自启动
    • 4.开启镜像加速(首先得注册阿里云账号)
    • 5.网络优化
    • 6.查看docker版本
  • 三、Docker镜像操作
  • 四、Docker容器操作

一、Docker概述

1.Docker是什么?

  • 是一种轻量级的"虚拟机"
  • 在Linux容器里运行应用的开源工具

Docker与虚拟机的区别

Docker基本原理及部署操作_第1张图片

Docker基本原理及部署操作_第2张图片

2.Docker的使用场景

  • 打包应用程序简化部署
  • 可脱离底层硬件任意迁移
  • 例:服务器从腾讯云迁移到阿里云

3.Docker的特点

  • 服务彼此间相互独立 (服务间的解耦)
  • 服务可以灵活迁移 (docker引擎 docker-ce)

4.Docker核心概念

镜像

  • 一个面向Docker容器引擎的只读模板

容器

  • 从镜像创建的运行实例

仓库

  • 集中保存镜像的地方

4.CentOS安装Docker的两种方式

  • 使用CURL获得Docker的安装脚本进行安装
  • 使用YUM仓库来安装Docker

以下演示第二种方法YUM仓库来安装Docker

二、YUM仓库部署19版Docker

1.安装依赖包

 [root@localhost ~]# yum -y install yum-utils device-mapper-persistent-data lvm2
     
 #yum-utils 提供了 yum-config-manager
 #device mapper 存储驱动程序需要 device-mapper-persistent-data 和 lvm2
 #Device Mapper 是Linux2.6内核中支持逻辑卷管理的通用设备映射机制,它为实现用于存储资源管理的块设备驱动提供了一个高度模块化的内核架构。

2.设置阿里云镜像源

 [root@localhost ~]# yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

3.安装 Docker-CE,关闭防火墙设置开机自启动

[root@localhost ~]# yum -y install docker-ce
[root@localhost ~]# systemctl stop firewalld.service 
[root@localhost ~]# setenforce 0
[root@localhost ~]# vim /etc/selinux/config 
                          SELINUX=disabled
[root@localhost ~]# systemctl start docker.service 
[root@localhost ~]# systemctl enable docker.service 

4.开启镜像加速(首先得注册阿里云账号)

登录阿里云首页 https://www.aliyun.com

搜索镜像加速Docker基本原理及部署操作_第3张图片
选择第一个官方镜像加速Docker基本原理及部署操作_第4张图片
在网页最下方选择容器镜像服务 ACRDocker基本原理及部署操作_第5张图片
点击管理控制台Docker基本原理及部署操作_第6张图片
然后选择镜像加速器,复制选中的字体(每个人的都不一样)Docker基本原理及部署操作_第7张图片


[root@localhost ~]# cd /etc/docker/
[root@localhost docker]# ls
key.json
[root@localhost docker]# tee /etc/docker/daemon.json <<-'EOF'
> {
>   "registry-mirrors": ["https://yfseh35c.mirror.aliyuncs.com"]
> }
> EOF
{
  "registry-mirrors": ["https://yfseh35c.mirror.aliyuncs.com"]
}
[root@localhost docker]# ls
daemon.json  key.json
[root@localhost docker]# systemctl daemon-reload
[root@localhost docker]# systemctl restart docker

5.网络优化

[root@localhost docker]# vim /etc/sysctl.conf 
添加net.ipv4.ip_forward=1
[root@localhost docker]# sysctl -p
net.ipv4.ip_forward = 1
[root@localhost docker]# systemctl restart network
[root@localhost docker]# systemctl restart docker.service 

6.查看docker版本

[root@localhost docker]# docker version
Client: Docker Engine - Community
 Version:           19.03.13
 API version:       1.40
 Go version:        go1.13.15
 Git commit:        4484c46d9d
 Built:             Wed Sep 16 17:03:45 2020
 OS/Arch:           linux/amd64
 Experimental:      false

Server: Docker Engine - Community
 Engine:
  Version:          19.03.13
  API version:      1.40 (minimum version 1.12)
  Go version:       go1.13.15
  Git commit:       4484c46d9d
  Built:            Wed Sep 16 17:02:21 2020
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.3.7
  GitCommit:        8fba4e9a7d01810a393d5d25a3621dc101981175
 runc:
  Version:          1.0.0-rc10
  GitCommit:        dc9208a3303feef5b3839f4323d9beb36df0a9dd
 docker-init:
  Version:          0.18.0
  GitCommit:        fec3683
  
==环境部署完毕==

三、Docker镜像操作

docker search 关键字      // 搜索镜像

Docker基本原理及部署操作_第8张图片

docker images    //查看本地镜像

在这里插入图片描述

docker pull nginx     // 下载nginx镜像

Docker基本原理及部署操作_第9张图片

docker rmi 名称/id   //删除指定镜像

Docker基本原理及部署操作_第10张图片

docker inspect 名称/id        //查看镜像具体信息

Docker基本原理及部署操作_第11张图片

docker tag nginx:latest nginx:web   //贴标签(共用同一个ID) 

在这里插入图片描述

docker save -o /opt/nginx nginx:web    //以文件形式保存镜像

在这里插入图片描述

docker load < /opt/nginx       //载入镜像

Docker基本原理及部署操作_第12张图片

四、Docker容器操作

docker create -it nginx:web /bin/bash   // 创建容器
docker ps                              // 查看已启动容器
docker ps -a                         // 查看所有容器

在这里插入图片描述

docker start 容器ID //启动容器

在这里插入图片描述

docker run -itd centos:7 /bin/bash      //创建并启动容器
docker exec -it 容器ID /bin/bash            // 进入容器

Docker基本原理及部署操作_第13张图片

docker run nginx:web /bin/bash -c ls /       //容器操作一次性命令(不会持续占用资源)

Docker基本原理及部署操作_第14张图片

docker stop 容器ID               //容器停止运行
docker rm 容器ID             //删除容器

Docker基本原理及部署操作_第15张图片

docker export 容器ID > /opt/nginx_c         //容器导出
cat nginx_c | docker import - nginx:web         //容器导入(会生成镜像,而不会创建容器)

在这里插入图片描述

Docker基本原理及部署操作_第16张图片
在这里插入图片描述

docker ps - a  |  awk{print "docker rm "$1}' | bash  //批量删除容器(只能删除退出状态的容器)

Docker基本原理及部署操作_第17张图片

你可能感兴趣的:(Docker,云计算,docker)