Docker学习之常用的基础命令总结
前言
Docker是一个用了一种新颖方式实现的超轻量虚拟机,在实现的原理和应用上还是和VM有巨大差别,专业的叫法是应用容器(ApplicationContainer)。下面这篇文章将简单介绍一下Docker常用的一些基础命令。
#在ubuntu中安装docker $sudoapt-getinstalldocker.io #查看docker的版本信息 $dockerversion #查看安装docker的信息 $dockerinfo #查看本机Docker中存在哪些镜像 $dockerimages #检索image $dockersearchubuntu:14.04 #在docker中获取ubuntu镜像 $dockerpullubuntu:14.04 #显示一个镜像的历史 $dockerhistorybirdben/ubuntu:v1 #列出一个容器里面被改变的文件或者目 $dockerdiffbirdben/ubuntu:v1 #从一个容器中取日志 $dockerlogsbirdben/ubuntu:v1 #显示一个运行的容器里面的进程信息 $dockertopbirdben/ubuntu:v1 #从容器里面拷贝文件/目录到本地一个路径 $dockercpID:/container_pathto_path #列出当前所有正在运行的容器 $dockerps #列出所有的容器 $dockerps-a #列出最近一次启动的容器 $dockerps-l #查看容器的相关信息 $dockerinspect$CONTAINER_ID #显示容器IP地址和端口号,如果输出是空的说明没有配置IP地址(不同的Docker容器可以通过此IP地址互相访问) $dockerinspect--format='{{.NetworkSettings.IPAddress}}'$CONTAINER_ID #保存对容器的修改 $dockercommit-m"Addedsshfromubuntu14.04"-a"birdben"6s56d43f627f3birdben/ubuntu:v1 #参数: #-m参数用来来指定提交的说明信息; #-a可以指定用户信息的; #6s56d43f627f3代表的时容器的id; #birdben/ubuntu:v1指定目标镜像的用户名、仓库名和tag信息。 #构建一个容器 $dockerbuild-t="birdben/ubuntu:v1". #参数: #-t为构建的镜像制定一个标签,便于记忆/索引等 #.指定Dockerfile文件在当前目录下,也可以替换为一个具体的Dockerfile的路径。 #在docker中运行ubuntu镜像 $dockerrun<相关参数><镜像ID><初始命令> #守护模式启动 $dockerrun-itubuntu:14.04 #交互模式启动 $dockerrun-itubuntu:14.04/bin/bash #指定端口号启动 $dockerrun-p80:80birdben/ubuntu:v1 #指定配置启动 $sudodockerrun-d-p10.211.55.4:9999:22birdben/ubuntu:v1'/usr/sbin/sshd'-D #参数: #-d:表示以“守护模式”执行,日志不会出现在输出终端上。 #-i:表示以“交互模式”运行容器,-i则让容器的标准输入保持打开 #-t:表示容器启动后会进入其命令行,-t选项让Docker分配一个伪终端(pseudo-tty)并绑定到容器的标准输入上 #-v:表示需要将本地哪个目录挂载到容器中,格式:-v<宿主机目录>:<容器目录>,-v标记来创建一个数据卷并挂载到容器里。在一次run中多次使用可以挂载多个数据卷。 #-p:表示宿主机与容器的端口映射,此时将容器内部的22端口映射为宿主机的9999端口,这样就向外界暴露了9999端口,可通过Docker网桥来访问容器内部的22端口了。 #注意:这里使用的是宿主机的IP地址:10.211.55.4,与对外暴露的端口号9999,它映射容器内部的端口号22。ssh外部需要访问:sshroot@10.211.55.4-p9999 #不一定要使用“镜像ID”,也可以使用“仓库名:标签名” #start启动容器 $dockerstart117843ade696117843ade696 #stop停止正在运行的容器 $dockerstop117843ade696117843ade696 #restart重启容器 $dockerrestart117843ade696117843ade696 #rm删除容器 $dockerrm117843ade696117843ade696 #rmi删除镜像 $dockerrmied9c93747fe1Deleted #登录DockerHub中心 $dockerlogin #发布上传image(push) $dockerpushbirdben/ubuntu:v1
当利用dockerrun来创建容器时,Docker在后台运行的标准操作包括:
1、检查本地是否存在指定的镜像,不存在就从公有仓库下载
2、利用镜像创建并启动一个容器
3、分配一个文件系统,并在只读的镜像层外面挂载一层可读写层
4、从宿主主机配置的网桥接口中桥接一个虚拟接口到容器中去
5、从地址池配置一个ip地址给容器
6、执行用户指定的应用程序
7、执行完毕后容器被终止
总结
关于Docker常用的基础命令就基本总结这些,希望对有需要的朋友们能有所帮助,如果大家有疑问可以留言交流。