AI周边十:简单认识一下Docker
最近在Github上搜索一些项目的时候,经常看到docker这个词,据说是因为docker可以让我们更加方便的配置项目环境。于是就很好奇的开始查找docker相关资料来了解一下这项技术。
一、docker是什么?如何安装?(windows/macos/linux)
下面这篇文章写得非常非常好,传送门送上:10分钟快速掌握Docker必备基础知识
二、docker的三大组件:镜像,容器与仓库
对于这三个组件的介绍,下面这篇文章写得很不错,包括它们各自的概念,以及它们之间的联系,传送门送上:Docker的三大核心组件:镜像,容器与仓库
三、简单总结几点
1、docker是一个和虚拟机有相似之处但又不一样的虚拟化技术。前者占用的宿主机资源更少,启动速度更快,性能也更接近原生系统。
2、我们在使用的时候,需要基于某个具体的镜像,创建所需的容器,进入容器之后我们就可以理解为进入了一个linux系统,并且是一个已经配置好环境的系统。(这个取决于你下载什么样的镜像)
3、进入到系统之后,我们可以进行一系列的操作。当我们对该系统进行修改之后(比如安装删除软件等等),如果想要该配置好的系统也可以在其他宿主机上运行,那么我们就需要进行系统迁移。系统迁移主要有以下两种方式:
-
将配置好的容器转换成压缩的镜像文件,然后将镜像文件拷贝到其他的宿主机上;只要在该宿主机上安装好docker,我们就可以先把压缩镜像文件解压,然后基于该镜像文件创建容器即可。
-
使用
Dockerfile
文件,该类型文件可以指导镜像文件执行一系列的配置工作,而不需要我们再手动配置一遍。这样我们只需要将Dockerfile
文件拷贝到其他的宿主机上,然后使用该文件进行镜像构建,之后再基于构建好的镜像创建容器就可以使用之前配置好的系统了。
这两种方法的具体操作在上述文章中都有讲解。
4、最后想说一下的是,开启一个容器,其实只是开启了,并不代表你就进入到了该容器中并且可以使用配置好的系统。如果想要进入到系统中,需要我们在使用run
创建容器时指定创建容器后运行/bin/bash
命令;或者在使用start
命令启动容器后,再使用exec
命令指定运行/bin/bash
命令才能真正进入到容器中使用系统。