【.com速译】如果你了解Docker并且即将开始使用Docker容器引擎,那你一定不能错过这篇文章。我们将从Docker容器、镜像、库三个方面为大家详细介绍。首先你要知道Docker是一个开源的应用容器引擎,可以让开发者将自己的应用和依赖打包到一个可移植的容器中,然后发布到任何流行的Linux机器上,它还可以实现虚拟化。容器完全使用沙箱机制,它们之间不会有任何接口。我们先来看看下面的工作流程图,可以帮助大家更好的理解Docker的工作模式。接下来,您需要了解有关Docker容器的三个基本知识:Docker容器:这是一个由Docker容器运行的简单虚拟机。Docker镜像:这类似于您在虚拟机上运行的ISO镜像,但这是一个高度精简的版本。Windows机器中的所有冗余安装包和库已被删除。Docker存储库:这是Docker映像的快照,可以作为另一个映像启动、停止、修改或发布。Docker容器正式下载后,就可以在PC端使用你的Docker了。为防止意外丢失,您可以使用Docker窗口命令创建一个默认的Docker备份。要使用的命令是:docker-machinecreatedefault。注意:您可以自行设置磁盘的大小和存储容量,并使用指定的专用开关通过上述命令执行。如果你要做一些数据工作,我强烈建议你设置磁盘分区。您还可以安装多个具有不同配置的Docker窗口以备不时之需。用来查看window机器的命令是:docker-machines。下面是一个示例输出:NAMACTIVEDRIVERSTATEURLSWARMDOCKERERRORSdefault*virtualboxRunningtcp://192.168.99.100:2376v17.04.0-ce要开始使用Docker,当然必须使用启动命令,然后可以跳过输入窗口名称的步骤,如果有一个默认名称,否则,您必须起草一个名称。要查看Docker窗口的工作状态,您可以输入状态命令,例如“正在运行”或“已停止”。另一件需要注意的事情是,您要确保您的主机操作系统与所有Dockerwindows环境变量兼容。docker-machineenv命令是获取可用于设置环境变量的运行脚本的便捷方式。SETDOCKER_TLS_VERIFY=1SETDOCKER_HOST=tcp://192.168.99.100:2376SETDOCKER_CERT_PATH=C:\Users\kushukla\.docker\machine\machines\defaultSETDOCKER_MACHINE_NAME=defaultSETCOMPOSE_CONVERT_WINDOWS_PATHS=trueREMRunthiscommandtoconfigureyourshell/%docker"fdocker"fdocker"fdocker"fdocker"machineenv')DO@%i只需要将上面的命令复制粘贴到终端,或者命令提示符,或者根据备注设置环境变量即可。 Docker镜像Docker容器先说这么多,现在来看看Docker镜像在容器上的运行情况。如果你已经知道“库”,那么你可以通过dockerpullrocker/rstudio命令下载镜像,如果不知道选择什么镜像,可以去Docker中心(类似Git中心);这是一个docker库,你可以在Pickthemirrorthereandstartwork找到它。好了,下面我们使用run命令来安装下一部分。运行类似于拉。可以查看镜像是否已经下载到本地。如果不从库中取出镜像,则需要打开一个新的容器才能使用该镜像。dockerrun-p8888:8888--nametensorflow-itgcr.io/tensorflow/udacity-assignments:1.0.0以上参数基本都是用来自定义容器的。它标识映射的端口、容器的名称和交互式虚拟控制台。如果此命令锁定了您的终端,则意味着您的终端stdin、stdout和stderr已连接到正在运行的容器。使用dockerimages命令,您可以查看下载到您的个人计算机上的不同图像。REPOSITORYTAGIMAGEIDCREATEDSIZRocker/rstudiolatest7a807646f0be11daysago993MBgcr.io/tensorflow/udacity-assignments1.0.04e01459e71502monthsagoDocker镜像可以定义上表中的镜像ID或库。所以,当删除镜像时,你可以使用这个命令:dockerrmi7a807646f0beDockerrepositoryDocker镜像本质上是静态的,容器可以启动/停止来做真正的工作。该容器正在使用另一个Docker镜像,您可以运行以下命令来检查您计算机上的容器。dockerps-aCONTAINERIDIMAGECOMMANDCREATEDSTATUSPORTSNAMES21d0cdc5051dgcr.io/tensorflow/udacity-assignments:1.0.0"/run_jupyter.sh"15minutesag如果删除开关,则只能看到当前正在运行的容器。在我们的例子中,这只是RStudio容器。嗯,你可以用这个命令停止一个容器:dockerstoprstudio要启动一个容器,你可以使用这个:dockerstartrstudio我通常这样写:dockerrun-d-p8787:8787-v/c/Users/kushukla:/home/rstudio/kushukla--namerstudiorocker/rstudio这是因为我想打开8787并同时连接到我的容器系统的本地字典,以便在该容器中可以访问我的R密码。如果你想知道接下来发生了什么,我可以去浏览器打开RStudio,IP在特定变量环境和端口下运行在Docker中。好了,我的分享到此结束,希望对大家有所帮助!原文链接:https://dzone.com/articles/docker-crash-course作者:KunalShukla【译文,合作站点转载,转载请注明原译者及出处为.com】
