学习
实践
活动
工具
TVP
写文章
专栏首页AlbertYang的编程之路【云+社区年度征文】Docker教程(2)—Docker常用基础命令
原创

【云+社区年度征文】Docker教程(2)—Docker常用基础命令

一.帮助命令

1.显示docker的版本信息

 docker version

2.显示docker的系统信息

docker info

3.帮助命令

docker 命令 --help

例如:

docker info --help

二. 镜像命令

1.查看所有本地主机上的镜像

docker images

可选参数:列出所有镜像,-a, --all 。只显示镜像id ,-q, --quiet。

2.搜索镜像

我们可以在 Docker Hub 网站上来搜索镜像,网址为: https://hub.docker.com/,也可以使用 docker search 命令来搜索镜像。

docker search 要搜索的镜像名称

例如搜索mysql:

docker search mysql

NAME

镜像仓库源的名称

DESCRIPTION

镜像描述

STARS

类似 Github 里面的 star,表示点赞、喜欢的数量

OFFICIAL

是否为docker 官方发布的镜像

AUTOMATED

自动构建

可选参数:--filter

搜索镜像STARS大于3000的镜像:

docker search mysql --filter=STARS=3000

3.下载镜像

下载镜像命令:docker pull 镜像名[:tag],如果不写tag,默认是latest(最新版)。

 docker pull mysql

下载Mysql5.7

docker pull mysql:5.7

4.删除镜像

删除指定镜像:

docker rmi -f 镜像id

删除多个镜像:

docker rmi -f 镜像id 镜像id 镜像id

删除全部镜像

docker rmi -f $(docker images -aq)

三. 容器命令

1.有了镜像才可以创建容器。下载centos镜像

docker pull centos

2.启动并进入容器

docker run -it centos /bin/bash

参数说明:

  • -i: 交互式操作。
  • -t: 终端。
  • centos: centos镜像。
  • /bin/bash:放在镜像名后的是命令,这里我们希望有个交互式 Shell,因此用的是 /bin/bash。

要退出终端,直接输入 exit:

3.从容器退出

exit

4.列出所有运行的容器

docker ps  # 正在运行的容器

可选参数:
-a # 正在运行的容器和历史运行过的容器
-n=? # 显示最近n条容器
-q # 只显示容器编号

5.退出容器

exit  # 直接停止容器并退出
Crtl + Q + P # 不停止容器退出

6.删除容器

docker rm 容器id   # 删除指定的容器,不能删除正在运行的容器,如果要强制删除 rm -f
docker rm -f  $(docker ps -aq)   #  删除全部容器

7.启动和停止容器

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

8.后台运行

在大部分的场景下,我们希望 docker 的服务是在后台运行的,我们可以过 -d 指定容器的运行模式。

docker run -itd --name centos-test centos  /bin/bash

注:加了 -d 参数不会进入容器,想要进入容器需要使用 docker exec 命令,下面会讲到。

9.导出容器

如果要导出本地某个容器,可以使用 docker export 命令。

docker export 容器id > centos.tar   # 导出容器 快照到本地文件 centos.tar

10.导入容器

可以使用 docker import 把容器快照文件导入为镜像。

cat centos.tar | docker import - test/centos:v1  # 将快照文件 centos.tar 导入到镜像 test/centos:v1

此外,也可以通过指定 URL 或者某个目录来导入,例如:

docker import http://example.com/exampleimage.tgz example/imagerepo

四. 其他常用命令

1.在后台启动容器

docker run -d centos

注意:docker后台运行时,必须要有一个前台进程,如果docker容器发现没有运行的应用,会自动停止。

2.查看容器的日志

docker logs -tf  --tail  n(每次显示日志的行数)  容器id

3.查看容器中的进程信息

 docker top 容器id        

4.查看镜像的元数据

docker inspect  容器id

5.进入当前正在运行的容器

在使用 -d 参数时,容器启动后会进入后台。此时想要进入容器,可以通过以下指令进入

  • docker attach
  • docker exec:推荐大家使用 docker exec 命令,因为这样退出容器终端,不会导致容器的停止。
方式1:docker exec -it 容器id  /bin/bash  # 如果从这个容器退出,不会导致容器的停止
方式2:docker attach 容器id  #  如果从这个容器退出,会导致容器的停止

6.把容器内的文件拷贝到主机

 docker cp 容器id:容器内要拷贝的文件路径   拷贝到主机的路径

五. 总结

​本文总结了一些基础常用的docker命令,大家可以根据下图进行记忆。

​参考地址:https://docs.docker.com/engine/reference/commandline/docker/

今天的学习就到这里了,由于本人能力和知识有限,如果有写的不对的地方,还请各位大佬批评指正。如果想继续学习提高,欢迎关注我,每天学习进步一点点,就是领先的开始,加油。如果觉得本文对你有帮助的话,欢迎转发,评论,点赞!!!

原创声明,本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

登录 后参与评论
0 条评论

相关文章

  • 【云+社区年度征文】Docker教程(1)—Docker简介与安装

    我们开发一个项目的时候通常会有两个环境,本地测试环境和线上环境。项目开发上线的时候,我们通常会把项目打成一个jar包或war包上传到线上的服务器,此时为了让项目...

    AlbertYang
  • 【云+社区年度征文】Docker教程(3)—Docker安装Tomcat,Nginx与可视化工具Portainer

    前面我们讲了Docker的安装使用,以及一些常用的命令。俗话说只说不练假把式,接下来我们使用安装Docker安装一些常用的镜像,练习一下Docker命令的使用。

    AlbertYang
  • 【云+社区年度征文】Deepin 安装 Postgres 及 docker 持久化

    PostgreSQL: The World's Most Advanced Open Source Relational Database

    caoayu
  • 【云+社区年度征文】webpack 学习笔记系列01-基础命令与常见配置

    webpack 命令可以在 package.json 中的 script 字段中添加命令,再使用 npm 执行:

    CS逍遥剑仙
  • 零基础学Docker【2】 | 一文带你快速学习Docker常用命令

    本篇是零基础学Docker系列的第二篇文章,在上一篇文章中?一文带你快速了解并上手Docker已经为大家讲解了一些什么是Docker,如何安装使...

    大数据梦想家
  • 【腾讯云开发者社区年度征文】2020征文活动获奖名单公布

    由腾讯云+社区主办的云+社区 2020 年度征文活动在2020年12月31号圆满的落下帷幕。年度征文活动自2020年11月发布后,吸引了众多社区内的小伙伴。经过...

    腾讯云开发者社区
  • Docker 实战教程之从入门到提高 (八)

    从本文开始,我们将分享一些在 Windows 操作系统下的 Docker 实战演练。

    Jerry Wang
  • 11月容器技术产品月报 | 云原生监控正式公测

    2020年11月 VOL:07 腾小云告诉你最前线的产品新特性, 总有一款让你心动~ 云说新品 容器产品新特性 11月上新 腾讯云边缘服务T...

    腾讯云原生
  • Docker学习教程笔记第二篇:Docker从入门到熟练使用详解

    Docker的基础是Linux容器(LXC)等技术,(LXC系统提供工具来管理容器,具有先进的网络和存储支持,还有最小容器操作系统模版的广泛选择)。

    聚优云惠
  • 腾讯云开发者社区【玩转腾讯云】视频征稿活动获奖名单公布

    由腾讯云+社区主办的云+社区【玩转腾讯云】之视频征稿活动在2021年04月19号圆满的落下帷幕。视频征稿活动自2021年03月发布后,吸引了众多社区内的小伙伴。...

    腾讯云开发者社区
  • 【腾讯云的1001种玩法】征文活动

    腾讯云技术社区「腾云阁」上线以来得到了广大程序员们的支持,为了吸引更多的开发者入驻,现再次举办【腾讯云的1001种玩法】征文活动。只要是与「腾讯云」相关的干货原...

    腾讯云开发者社区
  • 什么是Docker?Docker的快速入门教程

    Docker 从2013年发布至今, 许多人并不清楚 Docker 到底是什么,要解决什么问题,好处又在哪里?

    沈唁
  • 【云+社区年度征文】带领团队学习成长,干货总结

    在2020年这个非同寻常的年份里面,自己与团队小伙伴一起利用周例会时间,分享学习了《架构整洁之道》系列内容,同团队一起学习成长。在这个岁末年终的日子里,恰逢云+...

    架构精进之路
  • 【技术创作101训练营】Docker入门级安装使用教程!

    Docker从1.13版本之后分为社区版CE和企业版EE。 社区版是免费提供给个人开发者和小型团体使用的,企业版会提供额外的收费服务,比如经过官方测试认证过的基...

    程序员的时光001
  • 【干货合辑】毕业季,如何敲开「IT世界」的大门

    现在 IT 新技术日新月异,IT 行业的工作也变得赤手可热。刚毕业的大学生也蜂拥而至,但是在校的学习经验并没有一定的专业领域的实操经验,而被企业拒之门外。那么,...

    腾讯云开发者社区
  • 【云+社区年度征文】我与腾讯云。

    我是一个程序员,因此比较需要一台自己的服务器,配置呢不需要太高,平时跑一些小项目,和数据库的测试。一次偶然的机会,接触到腾讯云,当时是一百元一年,一口气就买了三...

    崔笑颜
  • 【有奖征文】会Docker,K8s,Istio的人来领Cherry键盘和Airpodspro啦!

    你对Docker,K8s,微服务,边缘容器等等各种云原生技术感兴趣吗? 你想和更多同行分享你对云原生技术的独特见解吗? 快来参与腾讯云原生有奖征文活动吧!Che...

    腾讯云原生
  • 马斯克将Twitter算法开源、谷歌向CNCF捐赠Istio、甲骨文修复Java年度加密漏洞 | 开源月报 Vol. 05

    「WeOpen Insight」是腾源会推出的「开源趋势与开源洞见」内容专栏,不定期为读者呈现开源圈内的第一手快讯、优质工具盘点等,洞察开源技术发展的风向标,预...

    腾源会

扫码关注腾讯云开发者

领取腾讯云代金券