项目中增加Redis,更稳定高效(项目中加redis)
968
2022-11-17
docker —— 入门与简介
1.什么是Docker?
Docker是基于容器的一种开源虚拟平台,容器在英文里叫container,有集装箱的意思,我认为集装箱这一个单词
很好的表达了什么是Docker。我们可以把一些衣服,鞋子,电子商品和水果等东西包装到一个集装箱中,通过一些
运输手段很容易的把这些的商品搬运到其他地方。
我们在这里说的容器也和集装箱类似,把不同的程序和程序的运行环境使用容器抽象化,提供一个接口,
极大简化了程序的发布与管理。
2.容器(Container)
Container是指在隔离的空间里运行一个进程的技术,也算是一种虚拟技术。我们在之前一般使用了虚拟OS(VMware和VirtuBox等),
此方法虽然方便简洁,但是由于负载相当大,不是特别好的一种选择。
(虚拟机与Docker)
正如上面所说的,使用虚拟OS存在着性能上的问题,于是为了解决这些问题专家们研发了一种隔离进程的技术。
在 linux系统中把这种技术称为linux container,该技术只是把进程隔离掉,对CPU和内存的损失非常小,工作效率非常大。
我们在一个服务器中运行多个容器,它们之间互不影响各自独立的运行,犹如使用轻量的虚拟机。我们可以登录运行中的容器,
输入一些命令,使用apt-get来安装一些package。我们也可以限制CPU和内存的使用限度,也可以连接主机指定的端口。
创建一个新的容器只需要1~2秒,和虚拟机比较其性能是遥遥领先的。
3.镜像(Image)
在Docker中,镜像这个概念和容器一样重要,很多人会把Docker中的容器与镜像搞混,分不清楚他们俩之间的区别。
镜像包含了运行容器所需要的一些文件与设定值。容器可以说是一个被运行的镜像,一些增加或改变的值会保存到容器当中。
我们可以在同一个进项中创建多个容器,即使容器的状态改变或容器被删除,不会影响到镜像的。
镜像拥有着为了运行容器的所有信息,不需要再安装一些另外的信息。当有新的服务器出现时,我们只要-之前创建好的镜像,
生成一些容器就行,一个服务器中可以运行多个容器。
4.安装Docker (Ubuntu)
5.创建镜像
先在想要装在容器里的程序的文件夹当中生成Dockerfile文件
之后根据自己的需求,在Dockerfile文件中输入一些内容,比如:
FROM:选择想要以什么镜像为基础。我们的镜像是以原有镜像的基础上添加一些内容而创建的。RUN: 运行 Shell Script 或者 一些命令COPY:将主机构建环境(上下文)目录中的文件和目录、以及一个URL标记的文件 拷贝到镜像中CMD:当容器开始运行的时候想要运行的文件或scriptWORKDIR:设置在CMD中的操作在哪一个文件夹中运行EXPOSE:设置将和主机连接的端口号
之后在对应文件夹中输入如下命令 "docker build -t image-name ." 即可创建一个镜像。
使用-t来给镜像一个标签,便于识别。
创建之后,可以通过输入docker images 来查看我之前创建好的一些镜像。
6.运行镜像
使用-d运行镜像可以让容器在后台运行,也就是说我们就可以运行一个容器,继续做下一件事情。
使用-p可以把我设定的公开端口直接转到容器内的非公开端口。 "docker run -p xxxx:xx -d image-name"
这个例子中,我们可以通过4000端口访问80端口。
我们还可以通过"docker ps"来检查正在运行的容器,使用"docker ps -a"可以检查包括停止的所有容器的信息。
如果需要访问容器内部,可以通过exec命令与来实现: "docker exec -it container-id bin/bash"
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~