1.为什么要学docker
答:
避免一种情况:
“我的机器上可以运行,为什么你的不可以?”
很多时候,我们想把自己的程序拿给别人运行,别人往往直接拷贝过来是不可以直接用的,甚至怎么改代码怎么修改环境都用不了,那怎么办?
Docker就是为了解决这个尴尬而出现的。
2.docker的作用
答:
a.解决运行环境不一致所导致的问题。这样就不会产生“本地运行没问题,可一到服务器上就不行了”的情况。
b.限定最大的cpu使用内存硬盘,这样就起到了隔离的作用,避免产生“一块代码产生死循环,把磁盘占满了,其它程序也挂了”的情况。
以下所有内容只是为了让你更好地理解docker的作用:
docker有三大核心:镜像,容器,仓库。
看不懂?没关系,下面我来粗糙地解释一下。
a.镜像:把你程序的代码、配置文件、数据库等,只要在你的电脑上能运行这个程序所需要的所有环境,都要记录下来。类似虚拟机的快照。
b.容器:容器就是一个箱子,镜像是静态的,容器是动态的,请你这么想象一下,你的镜像是静态的,如果它在docker里面能跑起来,这个就是动态的,这整个动态的过程就是容器。它在这容器里面跑,并且容器之间互不干扰,也就是说你的代码炸裂了,你的容器可能崩塌了,但是不影响别人的容器。所以就是你的镜像只能在你的容器里面动起来。
c.仓库:仓库就简单了,就是存放镜像的地方。类似于github存放代码的地方。