Docker学习笔记(一)Docker简介

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/a2011102394/article/details/83033039

Docker简介

一、前置知识和课程定位

  1. 前置知识

    1.1 强制

    熟悉linux命令和相关背景知识

    1.2 建议

    Maven和Git相关的知识

    Git仓库、Git命令

  2. 课程时间

    1.5 天

  3. 课程定位和范围(立足于我们的JavaEE方向)

    3.1 参考招聘网方向(java开发和docker开发)

    • JavaEE java SpringMVC/springboot/mybatis……
    • Docker Go docker开发运维方向

    3.2 视频发布风格

    • Docker基础篇(快速上手)
    • Docker 高级篇

二、Docker 是什么

  1. 为什么会有Docker出现

    解决开发和运维之间的相爱相杀,简单说就是之前搬家式交付代码改为现在搬楼式交付

  2. Docker理念

    Docker是基于Go语言开发的

    Build,Ship and Run Any App,Anywhere

    只需要一次配置好环境,换到别的机子上就可以一键部署好,大大简化了操作。

  3. Docker是什么

    解决了运行环境和配置问题软件容器,方便做持续集成并有助于整体发布的容器虚拟化技术。

三、Docker能干什么

  1. 之前的虚拟机技术

    虚拟机技术:
    可以在一种操作系统中运行另一种操作系统。而对于底层系统来说,虚拟机就是一个普通的文件。
    这类虚拟机完美的运行了另一套系统,能够使应用程序,操作系统,和硬件三者之间的逻辑不变。

    缺点:

    (1)资源占用多;
    (2)冗余步骤多
    (3)启动慢
    
  2. 容器虚拟化技术

    由于之前的虚拟机存在的诸多缺点,Linux发展出了另一种虚拟化的技术:Linux容器技术

    Linux容器不是模拟一个完整的操作系统,而是对进程进行了隔离。

    有了容器,就可以将软件运行所需要的所有资源打包到一个隔离的容器中。

    容器与虚拟机不同,不需要捆绑一整套操作系统,只需要软件工作所需的库资源和设置。

    因此,系统高效,轻量。

    Docker和传统虚拟机比较:

    • 传统的虚拟机技术,是虚拟出一套硬件,在其上运行一个完整的操作系统,在该系统上运行所需的应用进程
    • 容器内的应用进程直接运行在宿主机的内核中,容器没有自己的内核,而且也没有对硬件进行虚拟
    • 每个容器之间互相隔离,每个容器有自己的文件系统,容器之间进程不会互相影响,能区分计算资源

    Docker实质是一个浓缩的linux系统

  3. 开发/运维(DevOps)

    开发自运维

    一次构建,随处运行

    更快速的应用交付和部署
    
    更便捷的扩容缩容
    
    更简单的系统运维
    
    更高效的计算资源利用
    

四、去哪儿下

凡技术,必官网

  1. 官网

    Docker官网:

    Docker中文网站:https://www.docker-cn.com/

  2. 仓库

    Docker的三要素:镜像、容器、仓库

    Dockerhub :仓库https://hub.docker.com/

猜你喜欢

转载自blog.csdn.net/a2011102394/article/details/83033039