在Windows和Linux系统上都可以运行Docker容器。Docker在两种操做系统上的工做方式既有类似,又有不一样。下面,我将介绍在Windows系统上安装和运行Docker的步骤,而且指出它们与在Linux系统上运行Docker相比的相同之处和不一样之处。nginx
咱们先从安装开始。在这两个操做系统上安装Docker的过程是不一样的。docker
在Windows上安装Docker,就像安装任何Windows应用程序同样,你只须要下载该应用程序,点击安装便会弹出一个友好的用户安装向导:shell
相比之下,想要在Linux上安装Docker,你能够从发行版的包管理器(如yum、dnf)中获取Docker包,或者使用如下命令直接从Docker站点安装:微信
sudo sh -c "wget -qO- https://get.docker.io/gpg | apt-key add -"
在Windows和Linux系统中安装Docker的方法只有一个不一样。在Linux系统上安装Docker时,只须要安装Docker引擎和管理工具,而不须要建立虚拟机或者虚拟网络,由于你的容器将会为你建立环境。网络
Docker在Windows系统上安装是不一样的。在安装时,Docker会建立一个基于Linux的虚拟机,叫作MobyLinux虚拟机,这个虚拟机是基于Alpine Linux的。Docker应用程序会链接到此虚拟机,你即可以开始建立具备必要操做组件的容器了。架构
为了与本地网络和NAT(网络地址转换)进行通讯,在Docker安装中会为虚拟机配置一个子网,以便你的容器在应用程序中使用。工具
由于全部这些步骤都发生在后台,身为用户的你没必要为这些步骤操心。不过,事实上Docker是在Windows后台运行虚拟机,这也是Docker在Windows和Linux的另一个主要区别。学习
一旦你安装了Docker,在Linux和Windows系统上命令都是同样的。不管你运行哪一种操做系统,你只须要学习一套工具。spa
运行Docker命令时,Windows和Linux的惟一区别在于你运行它们的位置。在Linux系统上,你可使用你选择的终端仿真器。在Windows系统上,使用PowerShell的CLI(命令行界面)。操作系统
下面是在Windows系统上的PowerShell里运行Docker的例子。第一个截图显示的是系统的信息,而第二个截图显示了一些在Windows系统上运行的容器。
就我我的观点而言,我发如今Linux操做Docker比在Windows操做更容易。尽管在Windows和Linux系统环境下Docker的功能并无什么区别,可是Linux上的安装过程要快一些(安装apt-get比安装Windows软件包要快),并且在Linux上更容易访问shell。
上面说的,仅仅只是我我的的偏好。从技术层面来说,在Windows和Linux系统上使用Docker并无什么真正区别。你能够在这两个平台上使用Docker实现相同的功能。因此不能讲Windows或Linux对Docker的托管是“更好的”。
事实上,Docker的优秀之处正是在于,并不存在所谓的哪一个操做系统比另外一个操做系统更适合它。无论Docker在哪里运行(尽管有些配置以及后台运行的东西不尽相同),Docker的用户体验老是同样的。无论你使用哪一个操做系统,哪一个特定的shell,也无论Docker环境是在云端仍是在本地运行,又或者外面是晴天仍是雨天,一个docker run -d -p 80:80 nginx命令就能够启动一个NGINX容器。
这种一致性使得Docker具备很强的可靠性,从而带来极佳的用户体验。它能够帮助你避免配置“地狱”和环境的不可预测性,然而这些都是虚拟机和其它旧式基础架构的重要组成部分。
关注微信公众号(RancherLabs),获取每日Docker&K8S技术干货推送。添加Rancher助手(RancherLabsChina)为好友,加入技术群,获取免费技术支持,年底赢取Apple Watch、Beats耳机、机械键盘等重磅好礼。