话不多说,本篇文章给大家介绍 docker 的常用命令,基本上会覆盖我们日常使用的命令。

1、万能帮助命令

docker 命令 --help

假设你想用某个命令,但是又不知道该命令的一些参数怎么用,这时候上面的万能帮助命令就派上用场了。

更有甚者,你连命令也不记得了,那直接输入:

docker --help

找到你想要的那个命令,然后通过上面命令查看用法。

比如不知道如何运行容器?


找到英文 Run a command in a new container,这正是我们需要的。

但是我又不知道 run 命令怎么用,接着如下:

要是命令行看的太累,没关系,贴心的我给你们找好了官方参考:

https://docs.docker.com/engine/reference/commandline/docker/

什么?英文看不懂?百度翻译走起来吧,这个确实没啥办法了,但实际上你们看完我这边文章,基本上常用的命令都会详细介绍的。

2、常用命令

2.1 查看版本信息

docker version

在安装 docker 时我们介绍过这个命令,这里就不截图了。

2.2 查看系统信息

docker info

包括查看当前系统 docker 镜像和容器的数量。

3、镜像常用命令

3.1 查看镜像

docker images

①、REPOSITORY: 镜像仓库源

②、TAG:镜像版本,latest 表示最新版本

③、IMAGE ID:镜像ID(特别重要)

④、CREATED:创建时间

⑤、SIZE:镜像大小。

3.2 镜像搜索

docker search <镜像名>

①、NAME:镜像名称

②、DESCRIPTION:镜像描述

③、STARS:收藏数

④、OFFICIAL:是否官方

⑤、AUTOMATED:是否自动构建

这里的搜索,也有官方网址:

https://hub.docker.com/search?q=tomcat&type=image

3.3 下载镜像

docker pull 镜像名<:tags>

比如下载最新版 Tomcat 镜像: docker pull tomcat

比如下载Tomcat 8.0 镜像:docker pull tomcat:8.0

3.4 删除镜像

docker rmi repository<:tag> # 根据名称和版本删除,如果不指定tag,默认是lastest

docker rmi IMAGE_ID # 根据镜像id删除

docker rmi IMAGE_ID1 IMAGE_ID2 ... # 批量删除

上面的 repository 和 tag 便是前面说的 【docker images】命令的提示。

比如删掉 tomcat 8.0 版本的镜像:

4、容器常用命令

4.1 新建容器并启动

docker run <参数> 镜像id|镜像名称

参数说明:

①、--name: 为启动容器指定一个名字,注意有两个 --。

②、-d:表示以后台方式运行,并返回容器ID。

③、-i:以交互模式运行容器。

④、-t:为容器重新分配一个伪输入终端。

⑤、-p: 主机端口:容器端口 | 容器端口 | ip:主机端口:容器端口。

⑥、-P:随机端口映射,容器内部端口随机映射到主机端口。

⑦、--link=[]:添加链接到另一个容器。

比如以后台方式启动一个Tomcat容器:

4.2 进入容器

①、使用run方式在创建时进入

docker run -it [镜像id|镜像名] /bin/bash

②、使用 attach 命令(进入已启动的容器)

直接进入 容器启动命令的终端,不会启动新进程,多个attach连接共享容器屏幕,参数:--sig-proxy=false 确保CTRL-D或CTRL-C不会关闭容器

docker attach --sig-proxy=false 容器名称|容器ID

③、使用 exec 命令(进入已启动的容器)

进入容器后开启一个新的终端,可以在里面进行操作。

docker exec -it 容器名称|容器ID /bin/bash

4.3 退出容器

①、Ctrl+P+Q : 仅退出容器,不关闭容器。

②、exit: 关闭容器并退出。

4.4 查看所有运行的容器

1、查看正在运行的容器

docker ps

2、查看正在运行的容器的ID

docker ps -q

3、查看正在运行+历史运行过的容器

docker ps -a

4、显示运行容器总文件大小

docker ps -s

4.5 停止与删除容器

①、停止一个运行中的容器

docker stop 容器名|容器id

②、杀掉一个运行中的容器

docker kill 容器名|容器id

③、删除一个已停止的容器

docker rm 容器名|容器id

④、删除一个运行中的容器

docker rm -f 容器名|容器id

4.6 查看容器日志

docker logs <参数>容器名|容器id

参数:

①、-f 跟踪日志输出

②、-t:显示时间戳

③、--tail N:仅列出最后N条日志

4.7 查看容器进程

docker top 容器ID|容器名

4.8 查看容器信息

docker inspect 容器ID|容器名

4.9 主机和容器之间数据复制

①、将容器中的文件copy至本地路径

docker cp 容器名|容器ID:/[container_path] [local_path]

②、将主机文件copy至容器

docker cp [local_path] 容器名|容器ID:/[container_path]

③、将主机文件copy至容器,目录重命名为[container_path](注意与非重命名copy的区别)

docker cp [local_path] rabbitmq:/[container_path]

5、总结

一图胜千言:

Docker从入门到精通(四)——常用命令的更多相关文章

  1. WPF MVVM从入门到精通4:命令和事件

    原文:WPF MVVM从入门到精通4:命令和事件   WPF MVVM从入门到精通1:MVVM模式简介 WPF MVVM从入门到精通2:实现一个登录窗口 WPF MVVM从入门到精通3:数据绑定 WP ...

  2. Docker(二)安装及常用命令

    1.安装 1.安装虚拟机VMWare 链接:https://pan.baidu.com/s/1Xl7ENUm2gapPOFs-iXHpRQ 提取码:eubm 2.下载centos,我下的是这个版本的 ...

  3. Dockerfile自动制作Docker镜像(二)—— 其它常用命令

    Dockerfile自动制作Docker镜像(二)-- 其它常用命令 前言 a. 本文主要为 Docker的视频教程 笔记. b. 环境为 CentOS 7.0 云服务器 c. 上一篇:Dockerf ...

  4. Python基本语法[二],python入门到精通[四]

    在上一篇博客Python基本语法,python入门到精通[二]已经为大家简单介绍了一下python的基本语法,上一篇博客的基本语法只是一个预览版的,目的是让大家对python的基本语法有个大概的了解. ...

  5. Docker for Windows(三)Docker镜像与容器的区别&常用命令

    Docker镜像(Image)是一堆只读文件(read-only layer),容器(container)的定义和镜像(image)几乎一模一样,也是一堆层的统一视角,唯一区别在于容器的最上面那一层是 ...

  6. docker系列详解<二>之常用命令

    此篇我们以从docker运行一个tomcat为例,进行一下操作: 拉取镜像 查看镜像 创建容器 查看运行状态 进入退出容器 停止容器 重启容器 删除容器 删除镜像 1.拉取tomcat镜像: 1).查 ...

  7. MyBatis从入门到精通(四):MyBatis XML方式的基本用法之增删改

    最近在读刘增辉老师所著的<MyBatis从入门到精通>一书,很有收获,于是将自己学习的过程以博客形式输出,如有错误,欢迎指正,如帮助到你,不胜荣幸! 1. insert用法 1.1 简单的 ...

  8. Maven从入门到精通(四)

    这一篇我会着重讲解Maven的核心命令及作用,Maven在项目构建各个阶段的作用. 1.maven生命周期模型: 1.1.清洁(clean) 1.2.默认(default) 1.3.站点(site) ...

  9. Redis入门,Jedis和常用命令

    一.Redis简介 1.关于关系型数据库和nosql数据库 关系型数据库是基于关系表的数据库,最终会将数据持久化到磁盘上,而nosql数据     库是基于特殊的结构,并将数据存储到内存的数据库.从性 ...

随机推荐

  1. 90-95年CPU功耗感知调度研究

    最近读了三篇1990-1995年的通过调度来降低cpu能耗的文章[1] [2] [3],简单总结一下该年代单核CPU功耗感知的调度策略. Motivation 随着便携式设备逐渐兴起,人们对降低其功耗 ...

  2. [cf1491H]Yuezheng Ling and Dynamic Tree

    将其按照区间分块(即$[(i-1)K+1,iK]$作为一个块),并定义$f_{x}$表示$x$的祖先中编号最小且与$x$在同一个块内的节点,$f_{x}$可以通过$f_{a_{x}}$转移,即$f_{ ...

  3. [bzoj1190]梦幻岛宝珠

    根据$2^b$分组,组内处理出g[i][j]表示当容量为$j\cdot 2^{i}$且只能选b=i时最大价值,再组间dp用f[i][j]表示当容量为$j\cdot 2^{i}+(w\&(2^{ ...

  4. [bzoj2432]兔农

    将每一个重置为0的点作为一段,那么它会导致后面为以x x为开头的斐波拿起数列的东西,那么设这一段是以x为开头,要快速转移到下一段,就可以解决这道题目为了转移,我们要处理出下面的东西:1.求出x关于模k ...

  5. 力扣 - 剑指 Offer 54. 二叉搜索树的第k大节点

    题目 剑指 Offer 54. 二叉搜索树的第k大节点 思路1 二叉搜索树的特性就是中序遍历结果为递增序列,而题目要求的是第 k 大节点,所以就应该是要遍历结果为降序, 按照先遍历左子树.输出节点.遍 ...

  6. 查询某个信息下只有一条数据的sql

  7. 图片处理看这篇就完了「GitHub 热点速览 v.21.48」

    作者:HelloGitHub-小鱼干 图像处理一直是个实用且热门的研究领域,而本周的 GitHub 项目则多个图像项目上榜.先是勉强和图像处理搭边的渲染引擎 Filament,它能渲染出效果极佳的 3 ...

  8. CF814E An unavoidable detour for home

    考虑有每个最短路只有一条. 那么我们建出最短路树后,显然所有的非树边都是同层之间的横叉边. 那么我们考虑设\(f(i,j,k,z)\)为我们考虑到了第\(i\)个点,此时他被我们分配到了\(p\)层, ...

  9. UOJ 266 - 【清华集训2016】Alice和Bob又在玩游戏(SG 定理+01-trie)

    题面传送门 神仙题. 首先注意到此题的游戏是一个 ICG,故考虑使用 SG 定理解决这个题,显然我们只需对每个连通块计算一遍其 SG 值异或起来检验是否非零即可.注意到我们每删除一个点到根节点的路径后 ...

  10. R语言实战(第二版)-part 1笔记

    说明: 1.本笔记对<R语言实战>一书有选择性的进行记录,仅用于个人的查漏补缺 2.将完全掌握的以及无实战需求的知识点略去 3.代码直接在Rsudio中运行学习 R语言实战(第二版) pa ...