Docker 常用命令
当下技术都会形成客户端-服务端的一种形式,需要我们通过客户端的命令来驱使服务端执行相应的操作,所以需要学习相关的命令。例如Redis命令 等。
一、帮助命令
- docker version
- docker info
- docker --help
二、镜像命令
以Docker的Logo理解镜像与容器的关系
蓝色的大海 ---宿主机系统
鲸鱼 --- Docker
集装箱 --- 容器实例(来自我们的镜像模版)
-
docker imagers
列出本地主机上的镜像
说明:
REPOSITORY:表示镜像的仓库源 TAG:镜像的标签 IMAGE ID:镜像ID CREATED:镜像创建时间 SIZE:镜像大小同一仓库源可以有多个 TAG,代表这个仓库源的不同个版本,我们使用 REPOSITORY:TAG 来定义不同的镜像。
如果你不指定一个镜像的版本标签,例如你只使用 ubuntu,docker 将默认使用 ubuntu:latest 镜像OPTIONS说明:
-a :列出本地所有的镜像(含中间映像层)
-q :只显示镜像ID
–digests :显示镜像的摘要信息
–no-trunc :显示完整的镜像信息 -
docker search 某个镜像的名字
去docker hub 上查找某个镜像,查是从docker hub上查,拉取是从配置的阿里云上拉取
命令:docker search [OPTIONS] 镜像名字
OPTIONS说明:
--no-trunc : 显示完整的镜像描述 -s : 列出收藏数不小于指定值的镜像。(常用) --automated : 只列出 automated build类型的镜像; -
docker pull 某个XXX镜像名字
命令:docker pull 镜像名字[:TAG]
-
docker rmi 某个XXX镜像名字ID
删除镜像
删除单个 docker rmi -f 镜像ID 删除多个 docker rmi -f 镜像名1:TAG 镜像名2:TAG 删除全部 docker rmi -f $(docker images -qa)
三、容器命令
有镜像才能创建容器,这个是根本前提。(下载一个CentOS镜像)
-
新建并启动容器
命令:docker run [OPTIONS] IMAGE [COMMAND] [ARG…]
OPTIONS说明(常用):有些是一个减号,有些是两个减号
--name="容器新名字": 为容器指定一个名称; -d: 后台运行容器,并返回容器ID,也即启动守护式容器; -i:以交互模式运行容器,通常与 -t 同时使用;(重要) -t:为容器重新分配一个伪输入终端,通常与 -i 同时使用;(重要) -P: 随机端口映射; -p: 指定端口映射,有以下四种格式 ip:hostPort:containerPort ip::containerPort hostPort:containerPort containerPortdocker run -it 启动交互式容器
-
列出当前所有正在运行的容器
docker -ps
-
退出容器
exit 容器停止,退出
ctrl+P+Q 容器不停止,退出
-
启动容器
docker start 容器ID
-
重启容器
docker restart 容器ID
-
停止容器
docker stop 容器ID
-
强制停止容器
docker kill 容器ID
-
删除已经停止的容器
docker rm 容器ID
强制删除: -f
批量删除:docker rm $(docker ps -qa)
四、小结
-
docker常用命令
| 命令 | 含义 | 翻译 |
|---|---|---|
| attach | Attach to a running container | # 当前 shell 下 attach 连接指定运行镜像 |
| build | Build an image from a Dockerfile | # 通过 Dockerfile 定制镜像 |
| commit | Create a new image from a container changes | # 提交当前容器为新的镜像 |
| cp | Copy files/folders from the containers filesystem to the host path | #从容器中拷贝指定文件或者目录到宿主机中 |
| create | Create a new container | # 创建一个新的容器,同 run,但不启动容器 |
| diff | Inspect changes on a container’s filesystem | # 查看 docker 容器变化 |
| events | Get real time events from the server | # 从 docker 服务获取容器实时事件 |
| exec | Run a command in an existing container | # 在已存在的容器上运行命令 |
| export | Stream the contents of a container as a tar archive | # 导出容器的内容流作为一个 tar 归档文件[对应 import ] |
| history | Show the history of an image | # 展示一个镜像形成历史 |
| images | List images | # 列出系统当前镜像 |
| import | Create a new filesystem image from the contents of a tarball | # 从tar包中的内容创建一个新的文件系统映像[对应export] |
| info | Display system-wide information | # 显示系统相关信息 |
| inspect | Return low-level information on a container | # 查看容器详细信息 |
| kill | Kill a running container | # kill 指定 docker 容器 |
| load | Load an image from a tar archive | # 从一个 tar 包中加载一个镜像[对应 save] |
| login | Register or Login to the docker registry server | # 注册或者登陆一个 docker 源服务器 |
| logout | Log out from a Docker registry server | # 从当前 Docker registry 退出 |
| logs | Fetch the logs of a container | # 输出当前容器日志信息 |
| port | Lookup the public-facing port which is NAT-ed to PRIVATE_PORT | # 查看映射端口对应的容器内部源端口 |
| pause | Pause all processes within a container | # 暂停容器 |
| ps | List containers | # 列出容器列表 |
| pull | Pull an image or a repository from the docker registry server | # 从docker镜像源服务器拉取指定镜像或者库镜像 |
| push | Push an image or a repository to the docker registry server | # 推送指定镜像或者库镜像至docker源服务器 |
| restart | Restart a running container | # 重启运行的容器 |
| rm | Remove one or more containers | # 移除一个或者多个容器 |
| rmi | Remove one or more images | # 移除一个或多个镜像[无容器使用该镜像才可删除,否则需删除相关容器才可继续或 -f 强制删除] |
| run | Run a command in a new container | # 创建一个新的容器并运行一个命令 |
| save | Save an image to a tar archive | # 保存一个镜像为一个 tar 包[对应 load] |
| search | Search for an image on the Docker Hub | # 在 docker hub 中搜索镜像 |
| start | Start a stopped containers | # 启动容器 |
| stop | Stop a running containers | # 停止容器 |
| tag | Tag an image into a repository | # 给源中镜像打标签 |
| top | Lookup the running processes of a container | # 查看容器中运行的进程信息 |
| unpause | Unpause a paused container | # 取消暂停容器 |
| version | Show the docker version information | # 查看 docker 版本号 |
| wait | Block until a container stops, then print its exit code | # 截取容器停止时的退出状态值 |