Docker与virtualenv有何不同
Microsoft的官方教程蛮好(包括如何安装桌面版)
首先你直观感知都是隔离环境的工具,但前者只针对python后者更为底层和通用
虚拟化有两种级别
硬件级:运行在硬件之上,它需要模拟一个完整的操作系统,如VMWare, VirtualBox,亚马逊AWS和阿里云
操作系统级:运行在操作系统之上,它模拟的是运行在操作系统上的多个不同进程,并将其封装在一个密闭的容器里面,如Docker
比较发现,其实二者没什么比较性,简单理解:virtualenv虚拟python运行环境,docker直接虚拟系统运行环境
一些概念的理解:
镜像(image):既然docker就像一个系统的封装,因此有各种不同内容(进程)的系统可以提供
容器:利用镜像创建的一个实例
仓库:就像镜像商店,提供下载
(其实这些概念在之前配置阿里云ECS就接触过 大体相同)
更为准确的理解:Docker不是容器,而是管理容器的引擎
docker使用存储的方式:
容器使用临时存储which means 文件创建和文件写入都被捕获到暂存空间中,不会逃逸到主机中。 当停止容器实例时,暂存空间中进行的所有更改都会被丢弃。 启动新的容器实例时,将为该实例提供一个新的暂存空间
下载的镜像默认安装在 C:\ProgramData\docker 分布在“image”和“windowsfilter”目录中 可以使用 docker-root 配置来更改层的存储位置 不应修改层目录中的任何文件
不过关于docker的配置我觉得在客户端修改更方便 好像必须得在C:\ProgramData\Docker\config\daemon.json中修改相关配置
下载的镜像存在虚拟硬盘上:C:\Users\Public\Documents\Hyper-V\Virtual hard disks