zoukankan      html  css  js  c++  java
  • Docker入门简介(一)

    Docker 介绍

        Docker是Docker.lnc公司开源的一个基于LXC技术智商构建的Container容器引擎,源代码托管在GitHub上,基于Go语言并遵从Apache2.0协议开源。

        Docker是通过内核虚拟化的技术(namespaces及cgroups等)来提供容器的资源隔离与安全保障等。由于Docker通过操作系统层的虚拟化实现隔离,所有Docker容器在运行是,不需要类似虚拟机(VM)额外的操作系统开销,提高资源利用率。

    Docker的理念: Build(构建)   Ship(传输)    Run(运行)

            

    Docker 组成

          我们可以理解为Docker是一个非常传统的C/S结构的一个项目,由 Docker Client 和 Docker Server构成。

                               

    我们安装完Docker之后会有个docker的命令,这就相当于Docker Clinet。然后docker会在后台启动一个进程,这就是Docker Server。Docker Clinet 和 Docker Server 之间通过 REST API来进行通信。

    如下图: Docker的C/S架构

                                                                   

    容器VS虚拟化

                                   

    Docker和虚拟机最大的区别是少了客户机操作系统,镜像和消耗宿主机资源来说容器相对是轻量级。

                                  

    Docker能干什么?

          常用的8个Docker的真实使用场景,分别是简化配置、代码流水线管理、提高开发效率、隔离应用、整合服务器资源、调试能力、多租户环境、快速部署。    

                                          

    Docker改变了什么

      面向产品: 产品交付,之前我们做产品交付可能是交付软件包和安装操作文档来进行部署,那么现在的话可以直接交付Docker镜像。例如现在非常多的开源项目都提供了Docker镜像或者Docker file。

      面向开发: 简化环境配置, 每次公司有开发入职,第一天肯定是准备开发环境。有些复杂的开发环境部署麻烦,有Docker之后可以构建好Docker镜像,直接启动容器使用。

      面向测试: 多版本测试,Docker是轻量级的,可以快速的启动多个不同版本的容器来进行测试。

      面向运维: 环境一致性, 基于Docker镜像可以实现多个环境一致性。

      面向架构: 自动化扩容(微服务),当访问量上来之后可以快速启动多个容器来进行架构扩容。

    基于Docker的不可变基础设施

        不可变基础设施,服务上线之后就不能做任何的变更,不要直接ssh登录到容器进行配置的变更等等这样的操作,因为大部分故障来源于变更。

         不可变基础设施的理念是用替换的方式来进行版本更新,比如V1要升级到V2,不要直接对V1进行修改变更,而是直接新起一个V2容器,来进行替换。因为容器相比虚拟机是轻量级的,可以快速实现。

                        

    Ref

    八个Docker的真实应用场景 - DockOne.io

  • 相关阅读:
    Day3----《Pattern Recognition and Machine Learning》Christopher M. Bishop
    Day2----《Pattern Recognition and Machine Learning》Christopher M. Bishop
    学习笔记-----《Pattern Recognition and Machine Learning》Christopher M. Bishop
    “数学之美”笔记
    win10下使用nodejs安装及webstorm创建express项目的指导
    deepin/ubuntu下搭建Jekyll环境
    struts2.3.23升级到struts2.3.32
    struts2.5能不能再恶心点
    线程通信、线程同步以及进城通信的真的搞懂了么
    WINFORM数据库操作,有点像安装里面的SQLITE
  • 原文地址:https://www.cnblogs.com/root0/p/9856829.html
Copyright © 2011-2022 走看看