一、容器的基本操作1.1启动容器$dockerrunIMAGE[COMMAND][ARG...]-i--interactive=true|false[false]-t--tty=true|false[false]1.在新建容器中执行命令$dockerrunubuntuecho"HelloWorld"2、启动交互式容器$dockerrun-t-iubuntu/bin/bash3、退出交互式容器$exit1.2查看容器$dockerps[-a][-l]-a--all-l--latest1,查看正在运行的容器$dockerps2,查看所有容器$dockerps-a3,查看最新容器$dockerps-l4,查看所有容器大小$dockerps-a-s1.3查看配置$dockerinspectIMAGE_ID|IMAGE_NAME1。根据容器ID查看容器配置信息$dockerinspect08996db240fe2。根据容器名称查看容器配置信息$dockerinspectloving_elion1.4容器重命名$dockerrenameCONTAINERNEW_NAME1.vigilant_einstein更改为ubuntu$dockerrenamevigilant_einsteinubuntu1.5自定义容器$dockerrun[OPTIONS]IMAGE[COMMAND][ARG...]--name容器名称--hostnamehostname--iphostIP1.启动交互式容器时定义容器名称$dockerrun--name=container01-i-tubuntu/bin/bash2.启动交互式容器时定义主机名$dockerrun--hostname=ubuntu-i-tubuntu/bin/bash2.定义启动交互式容器时的主机ip地址$dockerrun--ip=172.30.100.104-i-tubuntu/bin/bash1.6重启停止的容器$dockerstart[-i]容器名称1.启动之前的容器$dockerstart-imy_container1.7重启正在运行的容器$dockerrestart[OPTIONS]CONTAINER[CONTAINER...]-t,--timeint终止容器前等待停止的秒数(默认10)1。立即重启容器$dockerrestartmy_container2。10秒后重启容器$dockerrestart-t10my_container1.8删除停止的容器$dockerrm容器名称1.删除停止的容器$dockerrmloving_elion1.9从外部复制文件到容器$dockercp[OPTIONS]SRC_PATH|-CONTAINER:DEST_PATH-a,--archive保留uid和gid信息-L,--follow-link保留符号链接信息1.将当前目录下的所有文件复制到容器的“/home”目录下$dockercp.avs:/home1.10从容器中复制文件到外部$dockercp[OPTIONS]CONTAINER:SRC_PATHDEST_PATH-a,--archive保留uid和gid信息-L,--follow-link保留符号链接信息1.全部复制将容器中“/home”下的文件复制到当前目录$dockercpavs:/home/..2.DaemonizedcontainerDaemonizedcontainer是相对于交互容器而言的。什么是守护进程容器?它可以在没有交互式会话的情况下长时间运行,适合运行应用程序和服务。2.1将容器作为守护进程运行$dockerrun-i-tIMAGE/bin/bash$Ctrl+PCtrl+Q2.2启动守护容器$dockerrun-dimagename[COMMAND][ARG...]2.3Attach到正在运行的容器$dockerattach容器名称|容器ID2.4查看容器日志$dockerlogs[-f][-t][--tail]容器名称-f--follows=true|false[false]-t--timestamps=true|false[false]--tail[all]2.5查看里面containerProcess$dockertopcontainername2.6在正在运行的容器中启动一个新进程$dockerexec[-d][-i][-t]containername[COMMAND][ARG...]#在现有的docker容器中启动一个新建进程dockerexec-i-tdc1/bin/bash2.7Stopdaemoncontainer#向容器发送信号,等待容器停止$dockerstopcontainername#强制终止一个容器$dockerkillcontainername2.8restartedStoppedcontainer$dockerstart容器名称3.端口映射3.1设置容器的端口映射run[-P][-p]-P--publish-all=true|false[false]-p--publish=[]portcontainerPort格式只指定容器端口dockerrun-p80-i-tubuntu/bin/bashhostPort:containerPortdockerrun-p8080:80-i-tubuntu/bin/baship:containerPortdockerrun-p0.0。0.0:80-i-tubuntu/bin/baship:hostPort:containerPortdockerrun-p0.0.0.0:8080:80-i-tubuntu/bin/bash3.2查看容器端口映射$docker端口容器名称3.3查看容器主机IP$dockerinspect容器名称|grepIPAddress4.查看和删除镜像4.1镜像标签和仓库Repository仓库包含一系列相互关联的镜像Registry仓库Docker镜像存储服务TAG镜像标签(Re存储库:dockername)ubuntu:14.04ubuntu:latest4.2列出图像$dockerimages[OPTIONS][REPOSITORY]-a--all=false-f--filter=[]-q--quiet=false--no-trunc=假1。列出所有图像(不包括中间层)$dockerimages2.列出所有镜像(包括中间层)$dockerimages-a3.列出所有图像的完整ID$dockerimages--no-trunc4。only列出镜像ID$dockerimages-q4.3查看镜像$dockerinspect[OPTIONS]CONTAINER|IMAGE[CONTAINER|IMAGE...]4.4删除镜像$dockerrmi[OPTIONS]IMAGE[IMAGE...]-f--force=false强制删除镜像--no-prune=false保留未标记的父镜像5.获取并推送镜像5.1查找镜像1.DockerHubhttps://hub.docker.com/2。dockersearch[OPTIONS]TERM--automated=false只显示自动构建--no-trunc=false不要截断输出-s--starts=0只显示至少xstars#Searchubutumirror$dockersearch-s3ubuntu#Search3starsAboveubuntuimage$dockersearchubuntu5.2pullimage$dockerpull[OPTIONS]NAME[:TAG]-a--all-tags=false下载存储库中所有标记的图像#下载jenkins图像$dockerpull詹金斯#下载ubuntu特定版本$dockerpullubuntu:14.045.3pushmirror$dockerpushNAME[:TAG]5.4更改镜像源使用--registry-mirror选项修改:/etc/default/dockeradd:DOCKER_OPTS="--registry-mirror=http://MIRROR-ADDR"可用资源访问https://www.daocloud.io获取可用资源6.构建镜像6.1构建镜像的意义保存对容器的修改,再次使用。自定义镜像的能力是基于软件的6.2构建镜像的方法1.通过容器构建$dockercommit2.通过Dockerfile构建$dockerbuild6.3通过容器构建镜像$dockercommit[OPTIONS]CONTAINER[REPOSITORY[:TAG]]-a--author=""Author-m--message=""Commitmessage-p--pause=true在提交期间暂停容器#提交镜像示例$dockercommit-a'JackMa'-m'nginx'commit_testdormancypress/commit_test16.4使用Dockerfile构建镜像1.创建第一个DockerfileFROMubuntu:14.04MAINTAINERclxye"email@sina.com"RUNapt-getupdateRUNapt-getinstall-ynginxEXPOSE802.使用Dockerfile构建镜像$dockerbuild[OPTIONS]PATH|网址|---force-rm=false--no-cache=false--pull=false--rm=true-t--tag=""-q--quiet=false$dockerbuild-t='test_image'7。节省加载图像7.1将图像保存为文件$dockersave[OPTIONS]IMAGE[IMAGE...]-o,--outputfilename1.将“sprite/ubuntu”图像保存为“ubuntu.img”文件$dockersave-oubuntu.imgsprite/ubuntu7.2从文件加载图像$dockerload[OPTIONS]-i,--inputfile1.从“ubuntu.docker”文件加载图像$dockerload-iubuntu.img
