Docker 初体验

前言

从N年前使用Vmware Workstation安装虚拟机开始,发现虚拟机一个很大的缺点是,占用资源太多,占用内存、硬盘等,程序员安装在开发机上,使用效果并不理想。实际应用中是不可能经常切换并使用不同的虚拟机的。

环境准备

  • Bios 中开启Intel virtualization
  • Win10 Pro
  • 安装Hyper-V


    启用 Windows 功能

体验Docker

可以先到 Docker Windows 看看Docker for Windows的介绍

安装Docker

下载 安装文件
安装过程很简单,无需赘述。
成功安装后,桌面多了一个Docker图标,右下角隐藏图标中也会多一个Docker is running的图标,并且在Hyper-V中, Docker自动创建了一个linux虚拟机,如图中名称为MobyLinuxVM的就是Docker自动创建的虚拟机。

image.png

Docker Demo

Docker for Windows 安装成功后,打开Windows Power Shell,输入如下命令,开启Docker体验。

$ docker run docker/whalesay cowsay boo

Whalesay 是一个用于Docker演示教程的包。

安装Kitematic

注册一个Docker ID 注册
切换Docker至Windows模式,下载Kitematic,可视管理界面。

Kitematic管理界面

通过Kitematic,可以方便地查看本机映像(Image) 及搜索安装新的Docker映像。

如何访问

首先查看已安装的容器信息

Nginx容器信息

Hostname是Docker随机创建的名称,我们可以在此处进行修改。可以看到容器使用了80端口,并映射到宿主机的32769端口。我们可以打开浏览器,在地址栏输入http://localhost:32769进行验证。

Docker 需知

Docker运行结构图
  1. 什么是容器 (Container)
    Container 在外贸行业,我们称之为货柜,全世界的货柜都是标准尺寸,20", 40", 40"HQ,可以安放在任何一条货柜船上,可以方便的使用货柜车运输。

Using containers, everything required to make a piece of software run is packaged into isolated containers. Unlike VMs, containers do not bundle a full operating system - only libraries and settings required to make the software work are needed. This makes for efficient, lightweight, self-contained systems and guarantees that software will always run the same, regardless of where it’s deployed.
使用容器,一个软件运行所需的一切都被打包成隔离的容器。 与VM不同,容器不捆绑完整的操作系统 - 只有所需的库和设置。高效,轻量自包含的系统保证软件将始终如一运行,无论它在哪里部署。

  1. 什么是映像(Image)
    Image 是静态内容,运行一个Image,需要Docker daemon将Image加载到Container中。Container运行过程中所发生的变化,不会保存到Image。
  2. 什么是卷(Volume)
    为了保证Image的纯洁性,我们可以将所有需要修改、保存的数据放在Volume里面。你可以这么理解,买了一个iPad或者一台微软Surface Laptop(Container),安装了最新的Win10操作系统(Image),你所有的设置或者文件保存在数据盘中(Volume)。有一天微软新的Surface Laptop出来,Win10出了Service Pack或者Win11系统出现,你只需要将数据盘移动到新系统,一切运行如初。
    当然,这是天国,乌托邦,理想的世界。想象中的美好!
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Docker学习笔记(一)Docker初体验 什么是Docker Docker是一个虚拟环境容器,可以将开发环境、...
    陈丰尧阅读 4,669评论 0 1
  • docker 学习总结 1、什么是docker Docker是一个开源的引擎,可以轻松的为任何应用创建一个...
    superzhan1992阅读 3,604评论 0 0
  • Docker初体验 ​ Docker 是一个开源的基于 LXC 的高级应用容器引擎,让开发者可以打包他们的应用...
    宸雨阅读 2,047评论 0 0
  • 概念和理解 Docker是一个容器引擎。doker官方网站一个容器实际上是运行在宿主机上的一个进程。只不过在启动这...
    hutou阅读 1,675评论 0 1
  • 上一篇中解释了Docker与虚拟机的不同,以及使用它的好处--一次创建到处运行。那么这一篇就介绍怎么创建一个可以在...
    大路无疆阅读 3,638评论 0 2

友情链接更多精彩内容