Docker是干什么用的?

2020-03-12  本文已影响0人  前端菜篮子

知乎:Kubernetes,2020 快速入门

阮一峰老师的docker入门教程

容器

没有集装箱,就没有全球化

什么是容器?容器的英文为 container,这个词除了有容器的意思,还有集装箱的意思。对于运输,集装箱有着重大的意义,在《集装箱改变世界》 这本书中,提出了“没有集装箱,就没有全球化”的观点,下面引用其中一段文字:

经济全球化的基础就是现代运输体系,而一个高度自动化、低成本和低复杂性的货物运输系统的核心就是集装箱。在1956年集装箱出现之前,人们很难想象美国的沃尔玛能够遍地开花。而在集装箱出现之后,以至于某件东半球的产品运至纽约销售,远比在纽约近郊生产该产品更划算。毫不起眼的集装箱降低了货物运输的成本,实现了货物运输的标准化,以此为基础逐步建立全球范围内的船舶、港口、航线、公路、中转站、桥梁、隧道、多式联运相配套的物流系统,世界经济形态因此而改变。

集装箱运输能够获得成功,可以概括出如下几个特点:

这些特点同样适用于软件领域的容器:

因此,可以说容器是集装箱思路在软件领域的实现,容器是软件的一个标准单元,可以将代码和依赖打包在一起、能够运行在多种操作系统和环境之上、多个容器能够在同一台物理机器上运行。

image

目前一说到容器,大家最容易想到的就是 Docker

docker启动       
systemctl start docker
service docker start

重启docker服务
systemctl restart  docker
sudo service docker restart

关闭docker    
systemctl stop docker
service docker stop

查看是否启动成功
docker ps -a

Docker本身并不是容器,它是创建容器的工具,是应用容器引擎

转:Docker是干什么用的?

另:docker教程

长话短说,这里我就不对docker进行系统的介绍说明了,网上很多介绍文章,我想新手的话可以先网上大概了解一下docker的基本概念。有一个模糊的、大概的感觉就行了。多看资料文档,有百利而无一害。

Docker不是虚拟机

很多人一开始学习Docker的时候,感觉Docker很像虚拟机,误以为Docker就是虚拟机。其实Docker不是虚拟机!这个千万不要搞错了!先记下这个硬性结果,后续真正搞环境搭建、项目部署的时候,就会明白了~不要着急,也不用担心_

Docker有一个感官的感受吧

光文字介绍,无法直观的感受到docker的强大之处,那就举两个例子看看吧~

【示例1】:Docker上安装mysql

你需要MySQL服务,那么在docker中通过简单的命令就可以安装一个MySQL数据库服务:

docker pull mysql

哇!mysql就这样安装好了? my god!太简单快捷了吧!
那如何启动mysql呢?命令如下:

docker run -d -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=123456 mysql

很简单吧,一个mysql服务就启动完成了,就可以正常使用了。可以通过mysql客户端(Navicat、DataGrip等)连接这个mysql数据库。

目前你可以不用去知道具体的命令以及参数的含义,感官上感觉一下docker的强大就行了。后面具体的环境部署搭建会详细说明。

【示例2】:Docker上安装jdk

你需要JDK环境,那么在Docker中通过简单的命令安装一个JDK的镜像, 然后通过一条命令启动这个容器就行了,容器会自动给你安装配置好JDK环境。

同样的,一条命令就可以完成:

docker pull java

就这么简单的一条命令,JDK就安装好了。你可以在Docker容器的命令行中通过java -version来检测jdk是否安装成功。

镜像、容器

对于新手而言,或许有点不明白镜像和容器分别是个什么东东,还是有点不明白。

你可以这样感官的理解:

镜像 —— 相当于ISO操作系统的安装包,ISO镜像的内容是固定的,不会发生改变,可以重复使用。

容器 —— 类似于使用ISO镜像安装的新的操作系统,可以使用一个相同的ISO镜像,安装很多操作系统。

你也可以制作属于自己的镜像哦

Docker的优缺点

这里不多做描述,随着学习后面的Docker容器启动、项目部署等教程,你自然就会感受到Docker的优势以及存在的不足。

上一篇 下一篇

猜你喜欢

热点阅读