学习笔记- docker学习

学习笔记- docker学习

0-写在前面

希望在写这篇文章的过程中能够快速的了解docker 的用法。
目前在外面实习,公司的情况是会使用docker作为容器,此外也了解到之后要去的实习以及大厂对于算法和环境基本上都是用基于docker 的容器进行封装的,所以学习如何使用docker就非常的有必要了。
之前一直用的学校实验室的服务器,目前要使用公司的服务器去做,因此就尽快冲一波吧!

1-相关链接

相关链接放在前面,我目前基本上仅仅是需要了解和快速上手一些基础的操作,更深层的东西就不care了,因此学习资料就是从网络上搜索到的一些相关的链接,根据快速上手性进行了一个分类,推荐有兴趣直接去看基础且详细的部分。

较详细:
Docker教程:Docker入门实践(精讲版)
Docker 教程-菜鸟教程
Docker0-百度百科

短平快:
10分钟快速掌握Docker必备基础知识 (推荐)

只要一小时,零基础入门Docker-知乎(推荐)

Docker入门教程:15个Docker基本命令及用法

Docker入门篇(一)之docker基础

2-内容摘要
  1. docker是什么?
    Docker是一个虚拟环境容器,可以将你的开发环境、代码、配置文件等一并打包到这个容器中,并发布和应用到任意平台中。比如,你在本地用Python开发网站后台,开发测试完成后,就可以将Python3及其依赖包、Flask及其各种插件、Mysql、Nginx等打包到一个容器中,然后部署到任意你想部署到的环境。
    Docker是使用时下很火的Golang语言进行开发的,其技术核心是Linux内核的Cgroup,Namespace和AUFS类的Union FS等技术,Docker通过这些底层的Linux技术,对Linux进程进行封装隔离,而被隔离的进程也被称为容器,完全独立于宿主机的进程。
    容器能成为开发与运维之间沟通的语言,因为容器就像一个集装箱一样,提供了软件运行的最小化环境,将应用与其需要的环境一起打包成为镜像,便可以在开发与运维之间沟通与传输。
    学习笔记- docker学习_第1张图片
    学习笔记- docker学习_第2张图片
  2. Docker的三个概念
    镜像(Image)、容器(Container)与仓库(Repository),这三个是Docker中最基本也是最核心的概念,对这三个概念的掌握与理解,是学习Docker的关键

镜像(Image):类似于虚拟机中的镜像,是一个包含有文件系统的面向Docker引擎的只读模板。任何应用程序运行都需要环境,而镜像就是用来提供这种运行环境的。例如一个Ubuntu镜像就是一个包含Ubuntu操作系统环境的模板,同理在该镜像上装上Apache软件,就可以称为Apache镜像。

镜像是一个静态的概念,不包含任何动态数据,其内容在构建之后也不会被改变。

容器(Container):类似于一个轻量级的沙盒,可以将其看作一个极简的Linux系统环境(包括root权限、进程空间、用户空间和网络空间等),以及运行在其中的应用程序。Docker引擎利用容器来运行、隔离各个应用。容器是镜像创建的应用实例,可以创建、启动、停止、删除容器,各个容器之间是是相互隔离的,互不影响。注意:镜像本身是只读的,容器从镜像启动时,Docker在镜像的上层创建一个可写层,镜像本身不变。
仓库(Repository):类似于代码仓库,这里是镜像仓库,是Docker用来集中存放镜像文件的地方。注意与注册服务器(Registry)的区别:注册服务器是存放仓库的地方,一般会有多个仓库;而仓库是存放镜像的地方,一般每个仓库存放一类镜像,每个镜像利用tag进行区分,比如Ubuntu仓库存放有多个版本(12.04、14.04等)的Ubuntu镜像。

  1. 常见的操作指令:
    不在进行复制粘贴,看上面的两篇标推荐的文章,里面讲述的已经非常详细了
3-总结

看了也没完全看,懂了也没完全懂
纸上得来终觉浅,绝知此事要躬行

你可能感兴趣的:(学习笔记,docker,容器,golang)