• docker基础知识普及(一)


    背景

    这篇内容是之前给部门同事培训时写的文档,旨在传达一些docker相关概念,有个基本印象,当然,以下内容都来自网络,我只是个搬运工。具体操作在下篇文章中

    一、什么是docker?

          1. Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的、可移植的、自给自足的容器
          2. 常用于:
              web应用的自动化打包和发布;
              自动化测试和持续集成、发布;
              在服务型环境中部署和调整数据库或其他的后台应用;
              从头编译或者扩展现有的OpenShift或Cloud Foundry平台来搭建自己的PaaS环境
          3.Docker 项目的目标是实现轻量级的操作系统虚拟化解决方案

    二、它与虚拟机有什么不同?

    如上图:左图是虚拟机   右图docker

    虚拟机: 每个虚拟机都包含应用程序,必要的二进制文件和库以及整个客户操作系统。

    容器: 1.容器包括应用程序及其所有依赖项,但与其他容器共享内核,享有虚拟机的资源隔离和分配优势,更加便携和高效
                2.它们在主机操作系统的用户空间中作为独立进程运行

    三、docker特点

    • 轻量:在一台机器上运行的多个 Docker 容器可以共享这台机器的操作系统内核
    • 兼容性:Docker 容器基于开放式标准,能够在所有主流 Linux 版本、Microsoft Windows 以及包括 VM、裸机服务器和云在内的任何基础服务设施上运行;
    • 安全:Docker 赋予应用隔离性,不仅仅限于彼此隔离,还独立于底层的基础设施

    四、核心概念

    • 镜像(image):是一个只读模板,用来运行Docker容器,一个镜像可以创建很多容器
    • 容器(container):容器是从镜像创建的运行实例。负责应用程序的运行,它可以被启动、开始、停止、删除。每个容器都是相互隔离。可以把容器看做是一个简易版的 Linux 环境和运行在其中的应用程序。
    • 标签(tag):标记本地镜像,将其归入某一仓库。
    • 仓库(repository):集中存放镜像文件的场所,分为公开仓库(Public)和私有仓库(Private)最大的公开仓库是 Docker Hub,存放了数量庞大的镜像供用户下载,国内有网易云,阿里云
    • docker file:是文件指令集,用来说明如何自动创建Docker镜像。

    五、Docker 工具箱

    • Docker 引擎:docker引擎是一个c/s结构的应用,主要组件如下图:

    其中:1. Server是一个常驻进程    2. REST API 实现了client和server间的交互协议  3. CLI 实现容器和镜像的管理,为用户提供统一的操作界面 

    • Docker Machine

              docker官方提供的一个可以帮助我们在远程机器上安装docker的工具,或者在虚拟机 host 上直接安装虚拟机并在虚拟机中安装 docker。通过 docker-machine 来管理

    • Docker Registry(仓库注册服务器) 例1

              专门用于存储和分发Docker镜像的开源应用程序。与仓库(repository)不严格区分,实际上Registry往往存放多个仓库

    • Docker Swarm  例2  

              Swarm是Docker官方提供的一款集群管理工具,其主要作用是把若干台Docker主机抽象为一个整体,并且通过一个入口统一管理这些Docker主机上的各种Docker资源。

    • Docker Compose

    例1
    https://hub.docker.com/r/ermao0423/pentesttools/


    例2

    http://172.18.0.130:9396/#/containers

    六、开始学习docker

    • 安装docker
    • 在Docker Hub上浏览镜像
    • 创建自己的镜像并运行它
    • 创建 Docker Hub 账户和镜像仓库
    • 创建一个自己的镜像(docker file)
    • 将你的镜像push到 Docker Hub 供他人使用

    七、常用操作

    1. docker安装部署(官网自行下载或者参考菜鸟教程)
    2. DaoCloud可配置加速器,提升国内网络访问 Docker Hub 的速度
    3. 配置国内镜像源
    4. 查找镜像:docker search
    5. 获取镜像:docker pull
    6. 查看镜像列表:docker images
    7. 利用 Dockerfile 来创建镜像
    8. 上传镜像:docker push
    9. 启动容器:docker start
    10. 进入容器:docker exec
    11. 停止容器:docker stop
    12. 删除容器:docker rm
    13. 运行容器:docker run
    14. 查看容器列表:docker ps
    15. 删除镜像:docker rmi

     docker官方学习网站: https://docs.docker.com/linux/started/

    参考链接:http://www.cnblogs.com/SzeCheng/p/6822905.html

  • 相关阅读:
    心情日记:疯人疯语
    疾病研究:转载口服药物恢复了杜氏进行性肌营养不良患者缺失的蛋白
    报告论文:游程(行程)长度编码matlab(或者C++)实现
    技巧心得:没有 显示隐藏的文件和文件夹 选项
    视频教程:YUV420和RGB相互转换C++实现(二)
    应聘经历:网易公司 笔试
    视频教程:YUV和RGB相互转换MATLAB实现(一)
    读书札记:7天搞定C语言(一)
    嵌入式系统Linux内核开发工程师必须掌握的三十道题
    交流:IT学习大本营:“2×10+10:积分+资源分”大派送
  • 原文地址:https://www.cnblogs.com/ermao0423/p/11941370.html
Copyright © 2020-2023  润新知