赞
踩
Docker是一个可以开发、运送和运行应用程序的开放平台。Docker能够将应用程序从基础架构中分离出来,使用Docke可以像管理应用程序一样管理基础架构。利用Docker快速运输、测试和部署代码能显著减少编写代码和在生产中运行代码之间的延迟。
Docker是用Go编程语言编写的,它利用了Linux内核的几个特性来提供其功能。Docker使用一种称为命名空间namespace
的技术来提供称为容器的独立工作空间。当运行一个容器时,Docker就会为该容器创建一组命名空间。容器的每个方面都在一个单独的命名空间中运行,并且它的访问仅限于该命名空间。
Docker提供了在称为容器的松散隔离环境中打包和运行应用程序的能力。隔离和安全性允许用户在给定主机上同时运行多个容器。由于容器是轻量级的,包含运行应用程序所需的一切,因此它不需要依赖主机上当前安装的内容。用户可以在工作时轻松共享容器,并确保与自己共享的每个人都获得以相同方式工作的相同容器。
另外,Docker也提供了管理容器生命周期的工具和平台:
Docker使用客户端-服务器体系架构(Client/Server)。Docker client 与Docker daemon 通信,后者负责构建、运行和分发Docker容器。Docker client 和 daemon 可以在同一系统上运行,也可以将Docker client 连接到远程Docker daemon。Docker client 和 daemon 使用RESTAPI通过UNIX套接字或网络接口进行通信。另一个Docker客户端是Docker Compose,它允许您处理由一组容器组成的应用程序。
Docker daemon(Dockerd
)侦听Docker API请求并管理Docker对象,如images
映像、containers
容器、networks
网络和volumns
卷。daemon之间可以通信以管理Docker服务。
images映像
containers容器
Docker client(Docker
) 是许多Docker用户与Docker交互的主要方式。当使用诸如docker run
之类的命令时,客户机将这些命令发送给dockerd,由dockerd执行这些使用Docker API的Docker命令,同时Docker client 可以与多个 daemon 通信。
Docker registry 存储Docker 映像。Docker Hub是任何人都可以使用的公共注册表,Docker默认配置在Docker Hub上查找映像。用户甚至可以运行自己的私人注册映像。
docker pull
或docker run
命令时,将从配置的注册表中提取所需的映像。使用docker push
命令时,映像将被推送到配置的注册表中。
Docker 依赖于已存在并运行的 Linux 内核环境,实质是在已经运行的 Linux 下制造了一个隔离的文件环境,所以如果其他系统想部署 Docker 就必须安装一个虚拟 Linux 环境。而在 Windows 上部署 Docker 的方法都是先安装一个虚拟机,并在安装 Linux 系统的的虚拟机中运行 Docker。
Docker Desktop for Windows作为最简单的安装方式,只能在64位的Windows 10操作系统且带有WSL-2上才能支持安装。
Docker官网对于Win7、Win8操作系统只支持Docker Toolbox方式来安装,若利用 docker toolbox 在Win7系统上安装Docker,国内可以使用阿里云的镜像下载docker-toolbox
进入Install Docker Desktop on Windows页面,可以看到要在Windows系统上安装Docker的系统要求为:WSL 2、Hyper-V、64位处理器、4GB+运行内存、支持虚拟化Virsualization
下图是WIn10系统中可在任务管理器中查看CPU的虚拟化功能是否启用。
由于Docker需要CPU支持虚拟化功能,首先可以重启电脑进入bios
中查看CPU的配置,观察Intel Virtualization Technology
是否为Enabled
,如果有要保存为Enabled支持。
使用securable.exe来检测一下SecurAble下载,发现图标都是绿色,说明电脑支持CPU虚拟化,可以在电脑上安装Docker Toolbox。
点击窗口中的三项可以分别查看64-Bit Processing Available
、Hardware DEP Available
和Hardware Virtualizaiton
的具体信介绍。
64-Bit Processing Available
This processor does offer 64-bit modes of operation. This means that this system is able to run the significantly more secure 64-bit versions of Microsoft's Windows XP and Vista operating systems.
The biggest challenge for 64-bit Windows systems is the fact that existing 32-bit device drivers cannot be used by the 64-bit operating system kernel. So if you do plan to try switching to 64-bit Windows, you should be sure to have a means for reverting to 32-bit operation if your system's hardware turns out to be incompatible with 64-bit operation. Many people have reverted to 32-bit operation after bravely giving 64-bits a try for a short time.
Hardware DEP Available
This processor does support hardware-based data execution prevention (DEP).
When hardware DEP support is teamed up with a properly configured operating system (and that part is crucial), computer security mistakes involving the deliberate overrunning of communications buffers can be automatically detected and prevented throughout the entire computer system. This makes data execution prevention, when available and active, the single most promising improvement for PC security ever. Really.
It is very important to note, however, that hardware support for DEP is only one of several enabling requirements that must be met before any benefit can be obtained. GRC will be following up the release of SecurAble with another powerful tool, DEPuty, that will help to properly configure, test and verify the operation of your system's critical DEP subsystem.
Hardware Virtualization
This processor does offer advanced hardware support for virtualization. However, while running under a 64-bit version of Windows this program cannot execute its 32-bit kernel code to determine whether Intel's VMX virtual machine extensions are being locked on, locked off, or neither. Since there's a chance that your system's BIOS may be deliberately disabling support for hardware virtualization (some do) you should re-run this program, if possible, with administrative privileges under a 32-bit version of NT, XP, or Vista. That will allow SecurAble to run a bit of kernel-mode code in order to determine exactly what's going on. (Note that you can also poke around in your system's BIOS to see whether you're able to find any references to "hardware virtualization" or "VMX", etc.
使用阿里云镜像下载Docker Toolbox,下载完成后如下图所示Docker-Toolbox-1.13.1.exe,大小为200M左右。
Docker Toolbox 是一个工具集,它主要包含以下内容:
Docker CLI
- 客户端,用来运行 docker 引擎创建镜像和容器。Docker Machine
- 可以让你在 Windows 的命令行中运行 docker 引擎命令。Docker Compose
- 用来运行 docker-compose 命令。Kitematic
- 这是 Docker 的 GUI 版本。Docker QuickStart shell
- 这是一个已经配置好Docker的命令行环境。Oracle VM Virtualbox
- 虚拟机。 安装步骤比较简单,双击运行DockerToolbox-1.13.1.exe
,点击Next
选择安装目录为D:\Docker Toolbox
后点击Next
进入选择组件窗口,默认全选即可后一直点击Next进行安装
安装结束后可以在左下角WIndows程序列表中看到Docker目录和Git目录(注:Docker默认会安装Git),
同时桌面上会出现三个图标,如下图所示:
通过Docker CLI命令参考文档和Docker 中文手册可以了解Docker命令的一些用法,服务于自己的需求,而常用的测试命令有docker help
、docker run
和docker version
等。
为了启动Docker Quickstart Terminal
,需要找到Git目录下的bash.exe
的路径D:\ServerTool\Git\bin\bash.exe
,因为Docker依赖Git的bash,然后在桌面Docker Quickstart Terminal
图标上右键选择属性,在属性窗口中找到快捷方式一栏下的目标,在右侧文本框中输入D:\ServerTool\Git\bin\bash.exe --login -i "D:\Docker Toolbox\start.sh"
后,现在可以启动Docker Quickstart Terminal
,当然也可以在文件目录D:\Docker Toolbox
下右键利用Git Bash启动start.sh
,这两个的效果是一样的。
在启动Docker Quickstart Terminal
或Git启动start.sh
的过程中可能会遇到boot2docker.iso下载失败的问题,需要到Github手动下载boot2docker.iso后放到C:\Users\Administrator\.docker\machine\machines\default
文件夹下即可,然后再次启动Docker Quickstart Terminal
即可成功
输入docker run hello-world
后结果如下图所示:
输入docker version
后结果如下图所示:
之后输入如下docker命令来安装ubuntu系统,具体命令如下:
docker pull ubuntu //拉取最新版的 Ubuntu 镜像
docker images //查看本地镜像
docker run -itd --name ubuntu-test ubuntu //运行容器ubuntu-test
docker exec -it ubuntu-test /bin/bash //通过 exec 命令进入 ubuntu 容器
ls //linux系统下查看目录命令
到此位置,ubuntu系统创建完成,可以在b39ad0d37a41下利用root权限执行linux命令了。
打开Kitematic(Alpha)
后如下图所示,可以搜索一些Docker Hub上的映像Docker images,并且左下角可以打开Docker CLI命令行窗口,输入docker version
可以查看Docker版本信息。
打开Oracle VM VirtualBox
后,新建后的一个默认VM,启动后可看到Docker新建VM的shell窗口,如下图所示:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。