菜鸟初识技术篇---Docker

     下面来继续讲讲Docker的一些个人见解,对于docker这个东西,在网上的说法很多,有人说是容器工具,也有人说是集装箱什么的,不同的人都有不同的看法,其实他们说得都对。在我个人认为的话,其实docker就跟虚拟机是类似的一个东西,我甚至怀疑它的前世就是虚拟机,也是一种虚拟化的东西,下面不再探讨其中的概念,这篇文章主要是介绍一些常用的命令操作等等吧:

    首先,说一下我们开发者可以利用docker来做什么呢?我们可以用来部署,发布,交付一些项目或者其他的一些应用什么的。

    接着,也顺便说一下它的一些优点吧:交付和部署快;高效虚拟化,各种平台拓展性高,管理方便简单,性能较好等等。

    然后再介绍一些常用的命令:

   docker images|grep XXX                   查找某个XXX字符的镜像信息

    docker  images                            列出所有的镜像信息

    docker ps                        列出容器信息

    docker ps -a                列出已创建的容器信息

    docker ps -s                列出已启动的镜像信息

    docker start/stop/rm/rename + 容器名/容器ID      开启/停止/移除/重命名某个容器

    docker rmi + 镜像       移除镜像

    docker run -d(后台运行)   -p(端口映射)  -name(容器名)  -e(环境变量)      运行一个容器

   以mysql为例:

   docker exec -it   mysql bash            连接mysql

   mysql -u root -p          mysql登录

   docker build -t xxxx:版本号 .       (注意后面有个点号,要写,编译生成一个镜像)

   docker-compose up (无参数默认启动docker-compose.yml文件)   启动compose

   docker-compose ps 列出compose所有容器信息

   docker-compose -f(指定yml文件)  xxx.yml up -d(后台启动)   启动compose 

最后,在这里再说一下docker、docker compose、dpckerFile、docker swarm之间的一些关系:

一个docker里面可以有多个镜像,然后一个镜像里可以有多个容器,dockerFile文件是指用来启动单个容器的多个命令的文件,不必每次都一个一个地来运行命令,dockerFile可以解决这个问题,然后针对于多个容器呢?那么docker compose就出现了,docker compose就是解决多个容器一起运行执行的问题,当然前面这三个东西都是针对于一个主机上的操作,要是想多个主机干涉操作呢?那么就用docker swarm吧,docker swarm可以解决多主机操作的问题,当然也是少不了Kubernetes的了,目前的推荐是使用Kubernetes,它与docker swarm是相同的功能,但是Kubernetes更佳,如果还没知道Kubernetes的话,建议可以自己去了解一下,这里就不深入讲解了,毕竟我也是刚刚开始接触,可能有些地方也讲错了,望体谅,望及时指正,谢谢! 

                                                                                                                                                                                            2018年11月15日

猜你喜欢

转载自blog.csdn.net/Kinglon17/article/details/84103818