docker入门(二):docker的常用命令
创始人
2024-05-13 13:51:11
0

文章目录

  • 前言
  • docker常用命令
    • 1 启停类/帮助 命令
    • 2镜像命令
    • 3 容器命令
  • 结语

前言

大家好,这是我学习docker系列的笔记文章,目标是掌握docker,为后续学习K8s做准备。本文列举了docker的常用命令,感兴趣的朋友可以看一下以前的文章。
上一篇: docker入门(一):在centOS虚拟机上安装docker

docker常用命令

列举常用的命令,不常用的已省略,因为我是拒绝冗余啊(看这个回顾知识点、应付面试足够了,生僻命令建议去查文档,不常见命令的用法后面会补充的)

1 启停类/帮助 命令

  • 启动docker: systemctl start docker
  • 停止docker: systemctl stop docker
  • 重启docker: systemctl restart docker
  • 查看docker状态: systemctl status docker
  • 开机启动: systemctl enable docker
  • 查看docker概要信息: docker info
  • 查看docker总体帮助文档: docker --help
  • 查看docker命令帮助文档: docker 具体命令 --help

2镜像命令

  • 列出本地主机上的镜像: docker images

同一仓库源可以有多个 TAG版本,代表这个仓库源的不同个版本,我们使用 REPOSITORY:TAG 来定义不同的镜像。

如果你不指定一个镜像的版本标签,例如你只使用 ubuntu,docker 将默认使用 ubuntu:latest 镜像

  • 搜索镜像: docker search [OPTIONS] 镜像名字

OPTIONS说明:
–limit : 只列出N个镜像,默认25个
docker search --limit 5 redis

  • 下载镜像: docker pull 镜像名称[:TAG] #没有TAG就是最新版

  • 查看镜像/容器/数据卷所占的空间: docker system df

  • 删除镜像: docker rmi 镜像ID

删除单个
docker rmi -f 镜像ID
删除多个
docker rmi -f 镜像名1:TAG 镜像名2:TAG
删除全部
docker rmi -f $(docker images -qa)

面试知识点:什么docker虚悬镜像?

答:仓库名、标签都是的镜像,俗称虚悬镜像dangling image
在这里插入图片描述

3 容器命令

  1. 有镜像才能有容器,这里假设已通过 docker pull ubuntu 命令下载了ubuntu镜像,后面的命令介绍基于此镜像。

  2. 新建并启动容器:docker run [OPTIONS] ***IMAGE*** [COMMAND] [ARG...]

    OPTIONS说明(常用):有些是一个减号(短杠),有些是两个减号
    –name=“容器新名字” 为容器指定一个名称;
    -d: 后台运行容器并返回容器ID,也即启动守护式容器(后台运行);
    -i:以交互模式运行容器,通常与 -t 同时使用;
    -t:为容器重新分配一个伪输入终端tty,通常与 -i 同时使用;
    也即启动交互式容器(前台有伪终端,等待交互);

  3. 启动交互式容器(前台命令行)

    #使用镜像centos:latest以交互模式启动一个容器,在容器内执行/bin/bash命令。

    docker run -it centos /bin/bash

    说明:/bin/bash:放在镜像名后的是命令,这里我们希望有个交互式 Shell,因此用的是 /bin/bash。

  4. 列出当前所有正在运行的容器: docker ps

  5. 退出容器

·两种退出方式
·run进去容器,exit退出,容器停止
·run进去容器,ctrl+p+q退出,容器不停止

  1. 容器启停

docker start 容器ID或者容器名
docker restart 容器ID或者容器名
docker stop 容器ID或者容器名

  1. 删除容器

删除已停止的容器
docker rm 容器ID
一次性删除多个容器实例
docker rm -f $(docker ps -a -q)
docker ps -a -q | xargs docker rm

  1. 启动守护式容器(后台服务端运行) docker run -d 容器名
    好习惯:每次运行容器之后通过docker ps看一下容器是否启动成功了

问题:docker run -d centos启动centos守护容器,然后docker ps -a 进行查看, 会发现容器已经退出?
说明: 有的Docker容器后台运行,就必须有一个前台进程.容器运行的命令如果不是那些一直挂起的命令(比如运行top,tail),就是会自动退出的。
这个是docker的机制问题,最佳的解决方案是,将你要运行的程序以前台进程的形式运行,常见就是命令行模式,表示我还有交互操作,别中断

如后台运行nginx命令:
docker run -di --name=nginx -p 80:80 nginx
9. 查看容器日志:docker logs 容器ID
查看容器内部细节,返回JSON格式数据:docker inspect 容器ID

  1. 退出容器后重新进入(进入正在运行的容器并以命令行交互):
    docker exec -it 容器ID /bin/bash
    docker attach 容器ID 不推荐
    上述两个容器进入命令exec和attach的区别:
  • attach 直接进入容器启动命令的终端,不会启动新的进程,用exit退出,会导致容器的停止。
  • exec 是在容器中打开新的终端,并且可以启动新的进程 用exit退出,不会导致容器的停止。
    推荐大家使用 docker exec 命令,因为退出容器终端,不会导致容器的停止。
  1. 从容器内拷贝文件到主机上: docker cp 容器ID:容器内路径 目的主机路径
  2. 导入导出容器
  • export 导出容器的内容留作为一个tar归档文件[对应import命令]
  • import 从tar包中的内容创建一个新的文件系统再导入为镜像[对应export]
    案例
    docker export 容器ID > 文件名.tar
    cat 文件名.tar | docker import - 镜像用户/镜像名:镜像版本号

结语

一个人可以走很快,但是一群人可以走更远,大家一起抱团学习啊。
在这里插入图片描述

相关内容

热门资讯

安卓子系统windows11,... 你知道吗?最近科技圈可是炸开了锅,因为安卓子系统在Windows 11上的兼容性成了大家热议的话题。...
电脑里怎么下载安卓系统,电脑端... 你有没有想过,你的电脑里也能装上安卓系统呢?没错,就是那个让你手机不离手的安卓!今天,就让我来带你一...
索尼相机魔改安卓系统,魔改系统... 你知道吗?最近在摄影圈里掀起了一股热潮,那就是索尼相机魔改安卓系统。这可不是一般的改装,而是让这些专...
安卓系统哪家的最流畅,安卓系统... 你有没有想过,为什么你的手机有时候像蜗牛一样慢吞吞的,而别人的手机却能像风一样快?这背后,其实就是安...
安卓最新系统4.42,深度解析... 你有没有发现,你的安卓手机最近是不是有点儿不一样了?没错,就是那个一直在默默更新的安卓最新系统4.4...
android和安卓什么系统最... 你有没有想过,你的安卓手机到底是用的是什么系统呢?是不是有时候觉得手机卡顿,运行缓慢,其实跟这个系统...
平板装安卓xp系统好,探索复古... 你有没有想过,把安卓系统装到平板上,再配上XP系统,这会是怎样一番景象呢?想象一边享受着安卓的便捷,...
投影仪装安卓系统,开启智能投影... 你有没有想过,家里的老式投影仪也能焕发第二春呢?没错,就是那个曾经陪你熬夜看电影的“老伙计”,现在它...
安卓系统无线车载carplay... 你有没有想过,开车的时候也能享受到苹果设备的便利呢?没错,就是那个让你在日常生活中离不开的iOS系统...
谷歌安卓8系统包,系统包解析与... 你有没有发现,手机更新换代的速度简直就像坐上了火箭呢?这不,最近谷歌又发布了安卓8系统包,听说这个新...
微软平板下软件安卓系统,开启全... 你有没有想过,在微软平板上也能畅享安卓系统的乐趣呢?没错,这就是今天我要跟你分享的神奇故事。想象你手...
coloros是基于安卓系统吗... 你有没有想过,手机里的那个色彩斑斓的界面,背后其实有着一个有趣的故事呢?没错,我要说的就是Color...
安卓神盾系统应用市场,一站式智... 你有没有发现,手机里的安卓神盾系统应用市场最近可是火得一塌糊涂啊!这不,我就来给你好好扒一扒,看看这...
黑莓平板安卓系统升级,解锁无限... 亲爱的读者们,你是否还记得那个曾经风靡一时的黑莓手机?那个标志性的全键盘,那个独特的黑莓体验,如今它...
安卓文件系统采用华为,探索高效... 你知道吗?最近安卓系统在文件管理上可是有了大动作呢!华为这个科技巨头,竟然悄悄地给安卓文件系统来了个...
深度系统能用安卓app,探索智... 你知道吗?现在科技的发展真是让人惊叹不已!今天,我要给你揭秘一个超级酷炫的话题——深度系统能用安卓a...
安卓系统的分区类型,深度解析存... 你有没有发现,你的安卓手机里藏着不少秘密?没错,就是那些神秘的分区类型。今天,就让我带你一探究竟,揭...
安卓系统铠无法兑换,揭秘无法兑... 最近是不是有很多小伙伴在玩安卓系统的游戏,突然发现了一个让人头疼的问题——铠无法兑换!别急,今天就来...
汽车安卓系统崩溃怎么刷,一键刷... 亲爱的车主朋友们,你是否曾遇到过汽车安卓系统崩溃的尴尬时刻?手机系统崩溃还能重启,但汽车系统崩溃了,...
miui系统可以刷安卓p系统吗... 亲爱的手机控们,你是否对MIUI系统情有独钟,同时又对安卓P系统的新鲜功能垂涎欲滴?今天,就让我带你...