前几天去朋友家,他给我演示了下云服务器的妙用,只见他轻轻敲出几行命令后
1 | yum install docker |
我空空如也的服务器上就装上了可以多用户登陆的”个人网盘“!
回家后想起他神乎其神的操作,内心久久不能平静,所以自己查询资料做了点小笔记:
快速搭建私有云盘参考链接:https://baiyue.one/archives/453.html
Docker
基于Go语言开发的开源项目
术语:
概念 | 说明 |
---|---|
Docker 镜像(Images) | Docker 镜像是用于创建 Docker 容器的模板,比如 Ubuntu 系统。 |
Docker 容器(Container) | 容器是独立运行的一个或一组应用,是镜像运行时的实体。 |
Docker 客户端(Client) | Docker 客户端通过命令行或者其他工具使用 Docker SDK (https://docs.docker.com/develop/sdk/) 与 Docker 的守护进程通信。 |
Docker 主机(Host) | 一个物理或者虚拟的机器用于执行 Docker 守护进程和容器。 |
Docker Registry | Docker 仓库用来保存镜像,可以理解为代码控制中的代码仓库。Docker Hub(https://hub.docker.com) 提供了庞大的镜像集合供使用。一个 Docker Registry 中可以包含多个仓库(Repository);每个仓库可以包含多个标签(Tag);每个标签对应一个镜像。通常,一个仓库会包含同一个软件不同版本的镜像,而标签就常用于对应该软件的各个版本。我们可以通过 <仓库名>:<标签> 的格式来指定具体是这个软件哪个版本的镜像。如果不给出标签,将以 latest 作为默认标签。 |
Docker Machine | Docker Machine是一个简化Docker安装的命令行工具,通过一个简单的命令行即可在相应的平台上安装Docker,比如VirtualBox、 Digital Ocean、Microsoft Azure。 |
Volume(数据卷) | 通过数据卷可以在容器之间实现共享和重用; 对数据卷的修改会立马生效(非常适合作为开发环境); 对数据卷的更新,不会影响镜像; 卷会一直存在,直到没有容器使用 |
和虚拟机的异同:
相同点:
虚拟机和Docker同是使用虚拟化技术,来达到在同一平台上配备多个运行环境的目的;
不同点:
- 虚拟机是通过软件模拟当前的硬件环境(硬件资源的虚拟化)来运行一个完整的操作系统,Docker自建的Docker容器(Container)是共用一个系统内核(内核级别的虚拟化);
- 虚拟机相对Docker非常笨重,因为承载了一个完整的操作系统导致占用硬件资源十分多,启动也很慢,而Docker中每个镜像文件大小十分轻便(MB级别大小),可以做到秒级启动