Docker1.0


Docker1.0


Dockers 概述

​ 出现原因:缓解开发与运维之间的不协调,两者之间的困难。开发时可将项目通过docker把项目的镜像(环境)给传到仓库中,需要时直接取出即可,用户不用自己重新布置环境。

​ Docker的思想来自于集装箱(logo如上),把不同的项目给隔离出来,每一个项目互相隔离出来,以免互相影响。从一开始的VM虚拟化技术到现在的容器虚拟化技术,从几个G到几个M的转变。

  • 传统虚拟机虚拟出一条硬件,运行一个完整的OS,然后在上面运行
  • 容器没有内核,也没有硬件,因此轻便了许多
  • 每个容器相互隔离,都有自己的文件系统

Docker文档和仓库:

https://docs.docker.com

http://hub.docker.com


Docker名词概念

镜像:类似于模板,镜像==>run==>容器,一个镜像可以产生多个容器。

容器:独立运行一个组,用镜像创建。

仓库:存放镜像的地方,分为公有和私有仓库。


Docker原理&流程

Docker是一个CS访问模型,Docker通过Socket从客户端访问,DockerServer接受命令并且执行。


Docker命令

帮助命令:

docker version			//查看docker版本
docker info				//查看docker信息
docker [op]	--help		//帮助请求

镜像命令:

docker images [op]			//查看镜像信息
docker search name [op]		//搜索镜像,eg:docker search mysql --filter=stars=3000
docker pull name [tag]   	//下载镜像,分层下载
docker rmi -f id			//选择删除镜像,id=$(docker images -aq)删除全部

容器命令:

docker run [op] images [way]  //启动容器,/bin/bash
op:
--name="Name"	容器名称
-d			   后台方式运行
-it			   交互式运行
-P			   指定容器端口
-p			   随机指定端口
exit					   //退出容器&&停止
ctrl+P+Q				   //退出容器&&不停止
docker rm [-f] id		 	//删除容器,id=$(docker ps -aq)
docker ps				   //显示正在运行的容器
docker ps -a			   //查看历史记录
docker start id			   //启动容器
docker restart id		   //重启容器
docker stop id			   //停止正在运行容器
docker kill id			   //强制停止容器
docker exec -it id [way]	//进入后台容器,新的终端
docker attach 			   //进入后台容器,执行窗口
//后台启动时,如果没有程序会自动停止

其它命令:

logs:

docker logs -ft -tail+num id	//查看容器日志
-f	//跟进当前时间
-t	//返回时间戳

容器进程:

docker top id

元数据:

docker inspect id

copy容器内文件到本机:

docker cp 容器id:路径  主机路径



文章作者: Dydong
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Dydong !
  目录