首页服务器Web服务器 Docker的理解和基本命令详解

Docker的理解和基本命令详解

如何通俗解释D ocker是什么? Docker思想来自于集装箱,集装箱解决了什么问题呢?比如,在一艘大船上,要把各种各样的货物要整理起来,集装箱(Docker)就可以做到,并且相互间不会影响。就…

如何通俗解释D ocker是什么?

Docker思想来自于集装箱,集装箱解决了什么问题呢?比如,在一艘大船上,要把各种各样的货物要整理起来,集装箱(Docker)就可以做到,并且相互间不会影响。就不需要指定运输的船了(这个船运吃的那个船运穿的)。只要把货物装在集装箱里封装好,就可以用一艘大船把他们都运走。

1.Docker就是类似的理念。云计算是运输船,Docker就是集装箱。

1.不同的应用程序可能会有不同的应用环境,比如.net开发的网站和php开发的网站依赖的软件就不一样,如果把他们依赖的软件都安装在一个服务器上就要调试很久,而且很麻烦,还会造成一些冲突。比如IIS和Apache访问端口冲突。这个时候你就要隔离.net开发的网站和php开发的网站。常规来讲,我们可以在服务器上创建不同的虚拟机在不同的虚拟机上放置不同的应用,但是虚拟机开销比较高。docker可以实现虚拟机隔离应用环境的功能,并且开销比虚拟机小,小就意味着省钱了。

2.你开发软件的时候用的是Ubuntu,但是运维管理的都是centos,运维在把你的软件从开发环境转移到生产环境的时候就会遇到一些Ubuntu转centos的问题,比如:有个特殊版本的数据库,只有Ubuntu支持,centos不支持,在转移的过程当中运维就得想办法解决这样的问题。这时候要是有docker你就可以把开发环境直接封装转移给运维,运维直接部署你给他的docker就可以了。而且部署速度快。

3.在服务器负载方面,如果你单独开一个虚拟机,那么虚拟机会占用空闲内存的,docker部署的话,这些内存就会利用起来。
总之docker就是集装箱原理。

4.docker就是用来存放应用的一个容器

容器管理

# docker run -it –name vm1 ubuntu bash //创建容器 # docker ps -a //查看容器状态 # docker attach vm1 //链接容器 # docker top vm1 //查看容器进程[root@foundation22 ~]# docker run -it –name vm1 ubuntu root@b6e503aec1e3:/# [root@foundation17 ~]# //////用ubuntu这个镜像生成一个名为vm1的容器///[root@foundation22 ~]# docker run -it ubuntu //未制定容器名称 [root@foundation22 ~]# docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES c2c94bd4ef22 ubuntu “/bin/bash” 2 minutes ago Up 2 minutes silly_curie a2798a01f075 ubuntu “/bin/bash” 4 minutes ago Up 8 seconds vm1 [root@foundation22 ~]# docker stop c2c94bd4ef22 //结束一个容器(用进程id结束) c2c94bd4ef22 [root@foundation22 ~]# docker rm c2c94bd4ef22 //删除容器(用进程id删除) c2c94bd4ef22 [root@foundation22 ~]# docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES a2798a01f075 ubuntu “/bin/bash” 5 minutes ago Up About a minute vm1 root@bd4961841626:/# [root@foundation17 ~]# docker attach vm1root@bd4961841626:/# ls bin dev home lib64 mnt proc run srv tmp var boot etc lib media opt root sbin sys usr root@bd4961841626:/# touch file{1..5} root@bd4961841626:/# ls bin dev file1 file3 file5 lib media opt root sbin sys usr boot etc file2 file4 home lib64 mnt proc run srv tmp var[root@foundation22 ~]# docker pause vm1 //暂停容器 vm1 [root@foundation22 ~]# docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES bd4961841626 ubuntu “/bin/bash” 2 minutes ago Up 41 seconds (Paused) vm1 [root@foundation22 ~]# docker unpause vm1 //启动容器 vm1 [root@foundation22 ~]# docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES bd4961841626 ubuntu “/bin/bash” 3 minutes ago Up About a minute vm1[root@foundation22 ~]# docker run -it –name vm2 ubuntu root@aac0080d0606:/# [root@foundation17 ~]# docker run -it –name vm3 ubuntu root@13e9f0e36ea0:/# [root@foundation17 ~]# docker run -it –name vm4 ubuntu root@2e4adfc6ea87:/# [root@foundation17 ~]# docker run -it –name vm5 ubuntu root@cf98619960fc:/# [root@foundation17 ~]# [root@foundation22 ~]# docker ps -aq cf98619960fc 2e4adfc6ea87 13e9f0e36ea0 aac0080d0606 bd4961841626 [root@foundation22 ~]# docker stop docker ps -aq cf98619960fc 2e4adfc6ea87 13e9f0e36ea0 aac0080d0606 bd4961841626 
本文来自网络,不代表1号站长-站长学院|资讯交流平台立场。转载请注明出处: https://www.1cn.cc/fwq/web/3017.html
上一篇VirtualBox 在Centos 7 中安装增强功能图解 (共享文件夹)
下一篇 linux如何无损调整分区大小
admin

作者: admin

这里可以再内容模板定义一些文字和说明,也可以调用对应作者的简介!或者做一些网站的描述之类的文字或者HTML!

为您推荐

评论列表()

    联系我们

    联系我们

    0898-88888888

    在线咨询: QQ交谈

    邮箱: email@wangzhan.com

    工作时间:周一至周五,9:00-17:30,节假日休息

    关注微信
    微信扫一扫关注我们

    微信扫一扫关注我们

    关注微博
    返回顶部