“新的血液”
大家好,我是CR-TEAM的新成员摩羯小生,一个偶尔自发神经质的淡定小伙。
工作难题
最近在工作中遇到这样一件事,部署微服务项目时,得需要在服务器环境下安装很多支撑组件,光MySQL升级版本就出现了很多匪夷所思的问题。我们不可能说每次部署一套服务器就要各种安装配置,这样的慢循环方式十分让人抓狂。于是我在网上查阅很多资料后,定准了 “docker” 这个新生词。![2b4d443d99bd1454a25dfd9167478050.png](https://i-blog.csdnimg.cn/blog_migrate/2f323b53dbf7092632167ee1420e9c6b.png)
“它”到底是什么?
通俗话来讲,docker 与虚拟 机十分类似,我们可以把它看作是一个容器,在容器里会存储着很多镜像供我们使用,我们也可以把它看作是容器中的产物链。开发者可以将自己的应用打包到可移植的镜像中,发布到任何流行的Linux或Windows环境下。为何要使用“它”
在docker镜像中,我们很容易找到自己所需要的支撑组件,比如MySQL,Tomcat,Java等等,并且所有的镜像打包好后生成的容器都是独立存在的。我们现在想部署一个web应用和一个大数据应用,在没有使用 docker 容器的时候,我们得需要在本地服务中安装应用相关的配置组件,可能会遇到兼容性或者组件冲突等等,不得不把两个应用部署到单独的服务器中。使用 docker 后,我们可以把各自的应用打包成docker容器,在各自容器中配置相关的支撑组件,最后通过docker compose 进行容器调度和编排。
如何去使用“它”
从docker容器和镜像的角度出发,以下会列举一些在实际工作中常用到的操作指令
镜像操作的基本指令
1.搜索镜像库中所匹配其关键词的所有镜像。docker search xxx
2.下载镜像库中的镜像
若需要下载不同版本,输入格式为”名称:版本号“,以 tomcat8为例,docker pull tomcat:8
docker pull xxx
3.列出下载后的镜像
docker images
4.删除下载后的镜像
docker rmi xxx
容器操作的基本指令
1.新建并启动一个容器docker run [OPTIONS] IMAGE [COMMAND] [ARG...]docker run xxx
可通过 docker image ls 或者 docker search xxx 进行定位查询。2.停止运行中的容器
关于镜像启动的选项参数 [OPTIONS] ,可查阅 docker docs 官网文档。
docker stop [OPTIONS] CONTAINER [CONTAINER...]docker stop xxx
3.启动已停止的容器
docker start [OPTIONS] CONTAINER [CONTAINER...]docker start xxx
![80f010a4aedca4a3cf9356ee0794a7f6.png](https://i-blog.csdnimg.cn/blog_migrate/07bcafee6bc425e498c842bf185d6927.png)
默认罗列为正在运行的容器,可根据参数进行过滤,改变显示方式等
docker ps [OPTIONS]docker ps
![afb68e6de6b30a0dfeb8b64466eaa27a.png](https://i-blog.csdnimg.cn/blog_migrate/e48e8aee40ba17c327666729e6ea9543.png)
docker inspect [OPTIONS] NAME|ID [NAME|ID...]docker inspect xxx
![cfcd09682861ed80281bad2cd365d85e.png](https://i-blog.csdnimg.cn/blog_migrate/d8b45f6b1529dbeadec52d024507e10a.png)
docker rm [OPTIONS] CONTAINER [CONTAINER...]docker rm xxx
docker exec [OPTIONS] CONTAINER COMMAND [ARG...]docker exec -d xxx touch /tmp/test
docker version [OPTIONS]docker version
9.查看docker系统范围的基本信息
docker info [OPTIONS]docker info
e
N
d
欢·迎·致·稿
![156c762f3b3f061938fa1fcdba93d3a6.gif](https://i-blog.csdnimg.cn/blog_migrate/db32745ee77c50a149b116a26e30cb92.gif)