• docker概念、安装与卸载


    第一章 docker概念

    Docker 是一个开源的应用容器引擎。

    Docker 诞生于2013年初,基于 Go 语言实现,dotCloud 公司出品,后改名为 Docker Inc。

    Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linxu 机器上。

    Docker 容器完全使用沙箱机制,相互隔离,容器性能开销极低。

    Docker 从 17.03 版本后分为 CE(Community Edition:社区版)和 EE(Enterprise Edition:企业版)。

    总结:Docker 是一个容器技术,解决了软件跨环境迁移的问题。

    第二章 docker架构

    Docker 包括三个基本概念:

    (1)镜像(Image):Docker 镜像(Image),就相当于是一个 root 文件系统。比如官方镜像 ubuntu:16.04 就包含了完整的一套 Ubuntu16.04 最小系统的 root 文件系统。

    (2)容器(Container):镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的类和实例一样,镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等。

    (3)仓库(Repository):仓库可看成一个代码控制中心,用来保存镜像。

    Docker 使用客户端-服务器 (C/S) 架构模式,使用远程API来管理和创建Docker容器。

    Docker 容器通过 Docker 镜像来创建。

    容器与镜像的关系类似于面向对象编程中的对象与类。

    概念说明
    Docker 镜像(Images)Docker 镜像是用于创建 Docker 容器的模板,比如 Ubuntu 系统。
    Docker 容器(Container)容器是独立运行的一个或一组应用,是镜像运行时的实体。
    Docker 客户端(Client)Docker 客户端通过命令行或者其他工具使用 Docker SDK (Develop with Docker Engine SDKs | Docker Docs) 与 Docker 的守护进程通信。
    Docker 主机(Host)一个物理或者虚拟的机器用于执行 Docker 守护进程和容器。
    Docker Registry

    Docker 仓库用来保存镜像,可以理解为代码控制中的代码仓库。

    Docker Hub(https://hub.docker.com) 提供了庞大的镜像集合供使用。一个 Docker Registry 中可以包含多个仓库(Repository);每个仓库可以包含多个标签(Tag);每个标签对应一个镜像。

    通常,一个仓库会包含同一个软件不同版本的镜像,而标签就常用于对应该软件的各个版本。我们可以通过 <仓库名>:<标签> 的格式来指定具体是这个软件哪个版本的镜像。如果不给出标签,将以 latest 作为默认标签。

    Docker MachineDocker Machine是一个简化Docker安装的命令行工具,通过一个简单的命令行即可在相应的平台上安装Docker,比如VirtualBox、 Digital Ocean、Microsoft Azure。

    第三章 安装docker

    Docker 可以运行在 Windows、Mac、Centos、Ubuntu 等操作系统上,本案例为在CentOs上安装Docker,其他安装方式可参考菜鸟教程:MacOS Docker 安装 | 菜鸟教程

    Docker 官网:https://www.docker.com

    3.1、yum手动安装docker
    1. # 1、yum包更新到最新
    2.  yum update
    3.  # 2、安装需要的软件包,yum-util 提供 yum-config-manager 功能,另外两个是 devicemapper 驱动依赖的
    4.  yum install -y yum-utils device-mapper-persistent-data lvm2
    5.  # 3、较旧的Docker版本称为docker或docker-engine,需要先卸载旧的Docker版本
    6.  yum remove docker \
    7.           docker-client \
    8.           docker-client-latest \
    9.           docker-common \
    10.           docker-latest \
    11.           docker-latest-logrotate \
    12.           docker-logrotate \
    13.           docker-engine
    14.  # 4、设置yum源,官方源地址下载速度会比较慢,建议选择国内源地址
    15.  # 4.1、官方源地址
    16.  yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
    17.  # 4.2、阿里云源地址
    18.  yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
    19.  # 4.3、清华大学源地址
    20.  yum-config-manager --add-repo https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo
    21.  # 5、安装docker,出现输入的界面默认输入y
    22.  yum install -y docker-ce
    23.  # 6、查看docker版本,验证docker是否安装成功
    24.  docker -v
    3.2、官方安装脚本自动安装

    安装命令如下:

     curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

    也可以使用国内 daocloud 一键安装命令:

     curl -sSL https://get.daocloud.io/docker | sh
    3.3、Docker配置镜像加速器

    本案例配置的是阿里云的镜像加速器,除了阿里云之外,还可以配置中科院、腾讯云、网易云等提供的镜像加速器,只需要将daemon.json文件中的镜像地址替换即可。

    1.  sudo mkdir -p /etc/docker
    2.  sudo tee /etc/docker/daemon.json <<-'EOF'
    3.  {
    4.    "registry-mirrors": ["https://registry.cn-hangzhou.aliyuncs.com"]
    5.  }
    6.  EOF
    7.  sudo systemctl daemon-reload
    8.  sudo systemctl restart docker
    3.4、启动并加入开机启动
    systemctl start docker && systemctl enable docker

    第四章 卸载docker

    删除安装包命令如下:

    yum remove docker-ce

    删除镜像、容器、配置文件等内容:

     rm -rf /var/lib/docker
  • 相关阅读:
    2023 大学生数学建模竞赛-C题-第一问
    QT学习日记20——OpenGL简介
    javaScript 数组对象取出某一列
    iOS开发之弹窗管理
    金蝶EAS、EAS Cloud远程代码执行漏洞
    2013 ~【VUE+ ElementUI】——【上传、下载】进度计算
    2.7V 到 5.5V、串行输入、电压输出、16 位数模转换器MS5541/MS5542
    软件盘点企业使用服装ERP的好处
    docker freeswitch mysql驱动相关
    Linux之奇怪的知识---supervisor超级守护进程的意义和使用方法
  • 原文地址:https://blog.csdn.net/threelifeadv/article/details/132779350