官方文档:https://docs.docker.com/reference/

一、帮助命令

1.1、docker version

查看docker的版本信息

1.2、docker info

显示docker的系统信息,包括镜像和容器的数量

1.3、docker --help

查看帮助信息

二、镜像命令

2.1、docker images

查看本地主机的所有镜像

  • REPOSITORY:镜像的仓库源
  • TAG:镜像的标签
  • IMAGE ID:镜像的id
  • CREATED:镜像的创建时间
  • SIZE:镜像的大小

2.2、docker search

在远程仓库搜索某个镜像

2.3、docker pull

拉取镜像(使用分层下载)

2.4、docker rmi

删除镜像:docker rmi -f <IMAGE ID>

# 删除所有镜像(递归删除)
docker rmi -f $(docker images -aq)

2.5、docker history

查看镜像历史:docker history [IMAGE ID](可以查看镜像的构建历史过程)

三、容器命令

3.1、docker run

启动并进入容器

不关闭容器,退回宿主机。这样的话,容器还在后台运行。

3.2、docker ps

列出所有运行的容器

3.3、docker rm

删除容器: docker rm -f [CONTAINERD ID]

docker rm -f $(docker ps -aq)        # 删除所有的容器
docker ps -a -q|xargs docker rm # 删除所有的容器

3.4、docker [s/r/s/k]

启动和停止容器的操作

# 启动容器
docker start 容器id
# 重启容器
docker restart 容器id
# 停止当前正在运行的容器
docker stop 容器id
# 强制停止当前容器
docker kill 容器id

四、其他常用命令

4.1、docker run -d

后台启动容器

# 命令 docker run -d 镜像名
docker run -d centos

4.2、docker logs

查看日志

docker logs -f -t --tail container_id

[root@node /]# docker run -d centos /bin/bash -c "while true;do echo kuangshen;sleep 1;done"
f15f147bb7dc13b919f0ab21c505cccf91dd4d321b9b8086552267baafcf8da9
[root@node /]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f15f147bb7dc centos "bash -c 'while true…" About a minute ago Up About a minute sleepy_jemison
[root@node /]#
[root@node /]#
[root@node /]# docker logs -tf --tail 10 f15f147bb7dc
2023-05-29T06:48:44.257022483Z kuangshen
2023-05-29T06:48:45.260770075Z kuangshen
2023-05-29T06:48:46.263123898Z kuangshen
2023-05-29T06:48:47.265158305Z kuangshen
2023-05-29T06:48:48.267925288Z kuangshen
2023-05-29T06:48:49.270874934Z kuangshen
2023-05-29T06:48:50.274174637Z kuangshen
2023-05-29T06:48:51.277475492Z kuangshen
2023-05-29T06:48:52.280608365Z kuangshen
2023-05-29T06:48:53.283947185Z kuangshen
2023-05-29T06:48:54.286896417Z kuangshen
2023-05-29T06:48:55.290543538Z kuangshen
2023-05-29T06:48:56.293999089Z kuangshen
2023-05-29T06:48:57.299610253Z kuangshen
2023-05-29T06:48:58.302460498Z kuangshen
^C
[root@node /]#
[root@node /]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f15f147bb7dc centos "bash -c 'while true…" 2 minutes ago Up 2 minutes sleepy_jemison
[root@node /]#
[root@node /]#
[root@node /]#
[root@node /]# docker rm -f f15f147bb7dc
f15f147bb7dc
[root@node /]#
[root@node /]#
[root@node /]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
[root@node /]#
[root@node /]#
[root@node /]#
[root@node /]#

4.3、docker top

查看容器中的进程信息

[root@node /]# docker run -d centos bash -c "while true;do echo kuangshen;sleep 1;done"
44ea59b3a9356a145dfd3a7bc68dc213865bfd695415f243323b93b0f065dbca
[root@node /]#
[root@node /]#
[root@node /]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
44ea59b3a935 centos "bash -c 'while true…" 6 seconds ago Up 5 seconds epic_boyd
[root@node /]#
[root@node /]#
[root@node /]#
[root@node /]# docker top 44ea59b3a935
UID PID PPID C STIME TTY TIME CMD
root 72172 72151 0 14:51 ? 00:00:00 bash -c while true;do echo kuangshen;sleep 1;done
root 72290 72172 0 14:51 ? 00:00:00 /usr/bin/coreutils --coreutils-prog-shebang=sleep /usr/bin/sleep 1
[root@node /]#
[root@node /]#
[root@node /]#

4.4、docker inspect

查看容器的元数据信息

4.5、docker exec/attach

进入当前正在运行的容器

# 方法一:进入容器后开启一个新的终端,可以在里面操作(常用)
docker exec -it container_id bash
# 方法二:进入容器正在执行的终端,不会启动新的进程!
docker attach container_id

4.6、docker cp

从容器内拷贝文件到主机

# docker cp 容器id:容器内路径 目的主机路径

[root@node01 ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
740ee6cbc783 centos "bash" 40 seconds ago Up 40 seconds reverent_bardeen
[root@node01 ~]#
[root@node01 ~]# docker exec -it 740ee6cbc783 bash
[root@740ee6cbc783 /]#
[root@740ee6cbc783 /]# cd /home/
[root@740ee6cbc783 home]# ls
[root@740ee6cbc783 home]#
[root@740ee6cbc783 home]# touch test.sh
[root@740ee6cbc783 home]# ls
test.sh
[root@740ee6cbc783 home]# exit
exit
[root@node01 ~]#
[root@node01 ~]# docker cp 740ee6cbc783:/home/test.sh ./
Successfully copied 1.54kB to /root/./
[root@node01 ~]# ls
anaconda-ks.cfg test.sh
[root@node01 ~]#

五、命令小结

— 要养成终生学习的习惯 —

docker - [04] 常用命令的更多相关文章

  1. Dockerfile指令及docker的常用命令

    DockerfileFROM: FROM <image> FROM <image>:<tag> MAINTAINER: MAINTAINER <name> ...

  2. Docker Kubernetes 常用命令

    Docker Kubernetes 常用命令 增 # 通过文件名或标准输入创建资源. kubectl create # 读取指定文件内容,进行创建.(配置文件可指定json,yaml文件). kube ...

  3. Docker(二十二)-Docker Swarm常用命令

    #查看集群节点 docker node ls #创建nginx服务 #docker pull hub.test.com:5000/almi/nginx:0.1 #下载私有仓库镜像 docker ser ...

  4. Docker Swarm常用命令

    #查看集群节点 docker node ls #创建nginx服务 #docker pull hub.test.com:5000/almi/nginx:0.1 #下载私有仓库镜像 docker ser ...

  5. Docker学习(三)认识Docker和常用命令

    Docker学习(三)认识Docker和常用命令 Docker体系结构 docker服务端,作为服务的提供方,核心进程 docker daemon,所有docker命令都是通过这个进程完成的 REST ...

  6. 【Docker入门】Docker的常用命令

    ​ ​ 了解和安装完docker之后,我们学习一下docker的常用命令就和当初学linux命令一样,放心命令其实大致相同只不过细节不同. 一.Docker启动类命令 1.启动docker:syste ...

  7. Docker CLI docker buildx 常用命令

    Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows操作系统的机器上,也可以实现虚拟化.Docker是内核 ...

  8. Docker CLI docker build 常用命令

    Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows操作系统的机器上,也可以实现虚拟化.Docker是内核 ...

  9. Docker CLI docker attach 常用命令

    Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows操作系统的机器上,也可以实现虚拟化.Docker是内核 ...

  10. Docker CLI docker run 常用命令

    Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows操作系统的机器上,也可以实现虚拟化.Docker是内核 ...

随机推荐

  1. docker containner挂掉,无法exec进入bash,如何修改文件的终极解决方法

    场景: Nginx在bash里面配置的时候挂掉了,然后docker start不起来,exec bash进不去,造成无法再改里面的文件了 解决方法: 1,docker ps –a 可以查到所有dock ...

  2. Mplus数据分析:性别差异gendergap的相关研究如何做?

    再出一篇用mplus做的多组比较和中介分析的文章,专门谈谈诸如性别差异的各种研究的分析方法,从本文中大家不止可以知道性别差异,各种差异,各种gap只要你感兴趣都可以套进来这个方法来进行你的研究设计. ...

  3. 渗透测试-前端加密分析之RSA加密登录(密钥来源本地)

    本文是高级前端加解密与验签实战的第5篇文章,本系列文章实验靶场为Yakit里自带的Vulinbox靶场,本文讲述的是绕过前端RSA加密来爆破登录. 分析 generateKey函数用来生成随机的RSA ...

  4. 【Python自动化】selenium简单应用

    准备工作 查询浏览器版本 chrome://version/ 下载驱动 https://chromedriver.storage.googleapis.com/index.html 下载的驱动版本要和 ...

  5. 【前端】【H5 API】addEventListener监听网络状态的变动

    WebviewObject Webview窗口对象,用于操作加载HTML页面的窗口 属性 id:webview窗口的标识 方法:监听 addEventListener 添加事件监听器 wobj.add ...

  6. How to Use cURL HTTP/2 on macOS

    cURL is one of most powerful tools for testing HTTP traffic. We typically use cURL to interact with ...

  7. Qt/C++开发经验小技巧291-295

    国内站点:https://gitee.com/feiyangqingyun 国际站点:https://github.com/feiyangqingyun 关于在pro中区分linux系统,在Qt4套件 ...

  8. 即时通讯技术文集(第38期):IM代码入门实践(Part2) [共15篇]

    为了更好地分类阅读 52im.net 总计1000多篇精编文章,我将在每周三推送新的一期技术文集,本次是第38 期. [- 1 -] 高仿Android版手机QQ首页侧滑菜单源码 [附件下载] [链接 ...

  9. 即时通讯技术文集(第24期):音视频WebRTC好文合集 [共20篇]

    为了更好地分类阅读 52im.net 总计1000多篇精编文章,我将在每周三推送新的一期技术文集,本次是第 24 期. [- 1 -] 开源实时音视频技术WebRTC的现状 [链接] http://w ...

  10. 昔日移动端IM明星 “米聊” 即将停止服务

    2021年1月19日,小米旗下米聊宣布,将于2021年2月19日12点停止米聊的服务. 1.以下消息来自米聊官网   2.关于米聊 米聊是小米科技出品的一款免费即时通讯工具,推出时间为:2010年12 ...