docker常用命令
-
docker容器信息
## 查看docker版本 docker version ## 查看docker容器信息 docker info ## 查看docker帮助(希望能看懂) docker --help
-
镜像查看
## 查看本地镜像 docker images
-
搜索镜像
## 搜索内容为xxxxx的镜像 docker search xxxxx ## 只显示starts>=600的镜像 docker search --filter=starts=600 xxxxx ## 只显示AUTOMATED=OK的镜像 docker search --automated xxxxx
-
下载镜像
## 下载xxxxx的最新镜像 docker pull xxxxx # 相当于docker pull xxxxx:latest ## 下载仓库所有的xxxxx镜像 docker pull -a xxxxx
-
删除镜像
## 单个镜像xxxxx删除 docker rmi xxxxx # 相当于docker rmi xxxxx:latest ## 强制删除镜像(针对镜像有运行的容器进程) docker rmi -f xxxxx ## 多个镜像xxxx1、xxxx2删除(镜像间用空格分隔) docker rmi -f xxxx1 xxxx2 ## 删除本地所有镜像(使用$()将运行结果作为命令的一部分) docker rmi -f $(docker images -q)
-
构建镜像
## (1)编写dockerfile cd /docker/dockerfile vim mycentos # 以mycentos为例 ## (2)构建docker镜像 docker build -f /docker/dockerfile/mycentos -t mycentos:1.1
-
启动容器
## 新建并启动容器 docker run -it --name mycentos # 以mycentos为例 ## 启动一个或多个已经被停止的容器 docker start mycentos ## 重启容器 docker restart mycentos ## 带端口映射的启动容器(例:将容器的22端口映射到主机的2222端口用于SSH) docker run -it -p 2222:22 --name myubuntu ubuntu
-i
:以交互模式运行容器(通常与-t
同时使用)-t
:为容器重新分配一个伪输入终端(通常与-i
同时使用)--name
:为容器指定一个名称-d
:以守护方式启动容器;即后台运行容器,并返回容器ID(在仅使用-d
时很可能陷入容器无限重启的状态) -
查看容器
## 显示运行中的容器 docker ps ## 显示所有容器 docker ps -a ## 显示最近创建的容器 docker ps -l ## 显示最近创建的3个容器 docker ps -n 3 ## 不截断输出的显示 docker ps --no-trunc
-
容器进入
## 在创建容器时就进入(同7.启动容器) docker run -it centos /bin/bash ## 关闭容器并退出 exit ## 仅退出容器,不关闭 --> 使用快捷键: Ctrl + P + Q ## 在centos容器中打开新的交互模式终端,可以启动新进程,参数为:-i即使没有附加也保持STDIN打开;-t分配一个伪终端 docker exec -it centos /bin/bash
-
容器的停止、删除
## 停止一个运行中的容器 docker stop xxxxx ## 杀掉一个运行中的容器 docker kill xxxxx ## 删除一个已停止的容器 docker rm xxxxx ## 删除一个运行中的容器 docker rm -f xxxxx ## 删除多个容器 docker rm -f $(docker ps -a -q)docker ps -a -q | xargs docker rm ## 删除容器并删除容器挂载的数据卷(-v参数) docker rm -v xxxxx
-
生成镜像
## 基于当前容器创建一个新的镜像,参数:-a为提交的镜像作者;-c为使用Dockerfile指令创建镜像;-m是提交时的说明文字;-p是在commit时将容器暂停 docker commit -a="Limonene0x" -m="my ubuntu" [容器的ID] myubuntu:v1.1