狂神说-Docker基础-学习笔记-02 Docker常用命令

1、帮助命令
docker version      #查看版本信息
docker info #显示docker的系统信息
docker `命令` --help #最常用、查看某命令的使用方法

官网上对所有docker命令的详细说明

2、镜像命令
docker images #查看系统中已有的镜像
C:\Users\z>docker images -a
REPOSITORY TAG IMAGE ID CREATED SIZE
mysql 5.7 938b57d64674 3 weeks ago 448MB
mysql latest ecac195d15af 3 weeks ago 516MB
# REPOSITORY(镜像的仓库源) TAG(标签,也就是版本) IMAGE ID(镜像ID) CREATED(创建时间) SIZE(镜像大小)
#命令的可选项
-a, --all # 列出所有镜像
-f, --filter filter # Filter output base on confitions provided
--format string # Pretty-print images using a Go template
--no-trunc # Don't truncate output
-q, --quit # only show numeric IDS
docker search查找镜像
# docker search 基本使用方法
C:\Users\z>docker search mysql
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
mysql MySQL is a widely used, open-source relation… 11676 [OK]
mariadb MariaDB Server is a high performing open sou… 4450 [OK]
mysql/mysql-server Optimized MySQL Server Docker images. Create… 867 [OK]
percona Percona Server is a fork of the MySQL relati… 561 [OK] C:\Users\z>docker search mysql --filter=STARS=4000
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
mysql MySQL is a widely used, open-source relation… 11676 [OK]
mariadb MariaDB Server is a high performing open sou… 4450 [OK]
# docker search `imageName` --filter=`过滤条件`
C:\Users\z>docker search mysql --filter=stars=4000
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
mysql MySQL is a widely used, open-source relation… 11676 [OK]
mariadb MariaDB Server is a high performing open sou… 4450 [OK]
docker pull下载镜像
C:\Users\z>docker pull mysql
Using default tag: latest # 默认下载最新版本镜像
latest: Pulling from library/mysql
……
Digest: sha256:6d7d4524463fe6e2b893ffc2b89543c81dec7ef82fb2020a1b27606666464d87
Status: Downloaded newer image for mysql:latest
docker.io/library/mysql:latest C:\Users\z>docker pull mysql:5.7 # 下载指定版本镜像(要先确定这个版本官方镜像是否支持)
5.7: Pulling from library/mysql
……

通过观察可以发现,对于不同版本的mysql的下载是通过分片文件的形式实现的,已经存在的有效模块会被复用不会重新下载,这是docker的设计精髓。

docker rmi删除镜像
docker rmi -f 镜像ID
# 删除全部镜像 使用$命令引用的方式(适用于Linux系统中)
docker rmi -f $(docker imges -aq)

C:\Users\z>docker rmi -f feb5d9fea6a5
Untagged: hello-world:latest
Untagged: hello-world@sha256:cc15c5b292d8525effc0f89cb299f1804f3a725c8d05e158653a563f15e4f685
Deleted: sha256:feb5d9fea6a5e9606aa995e879d862b825965ba48de054caab5ef356dc6b3412
C:\Users\z>docker rmi -f 938b57d64674 ecac195d15af
Untagged: mysql:5.7
Untagged: mysql@sha256:2db8bfd2656b51ded5d938abcded8d32ec6181a9eae8dfc7ddf87a656ef97e97
Deleted: sha256:938b57d64674c4a123bf8bed384e5e057be77db934303b3023d9be331398b761
Deleted: sha256:d81fc74bcfc422d67d8507aa0688160bc4ca6515e0a1c8edcdb54f89a0376ff1
Deleted: sha256:a6a530ba6d8591630a1325b53ef2404b8ab593a0775441b716ac4175c14463e6
Deleted: sha256:2a503984330e2cec317bc2ef793f5d4d7b3fd8d50009a4f673026c3195460200
Deleted: sha256:e2a4585c625da1cf4909cdf89b8433dd89ed5c90ebdb3a979d068b161513de90
Untagged: mysql:latest
Untagged: mysql@sha256:6d7d4524463fe6e2b893ffc2b89543c81dec7ef82fb2020a1b27606666464d87
Deleted: sha256:ecac195d15afac2335de52fd7a0e34202fe582731963d31830f1b97700bf9509
Deleted: sha256:451fe04d80b84c0b7aca0f0bbdaa5de7c7ac85a65389ed5d3ed492f63ac092e2
Deleted: sha256:814cbf8bc7f6bb85685e5b803e16a76406c30d1960c566eee76303ffac600600
Deleted: sha256:735f72e1d1b936bb641b6a1283e4e60bf10a0c36f8244a5e3f8c7d58fa95b98a
Deleted: sha256:f2d209a30c3950fadffb2d82e1faa434da0753bee7aacad9cdec7d8a7a83df37
Deleted: sha256:03b9f8c5331d9534d2372a144bcffc8402e5f7972c9e4b85c634bef203ec6d20
Deleted: sha256:80f5487a88b8061855e99782979ed6069a8dd1c7dfbb1eb63fe42a4a9d119436
Deleted: sha256:f791a6c727931d41c51f8bf24ee32a4dbf0169f372b174f1ff89b4836b97c48e
Deleted: sha256:4c88df098412e11a98936509f3cede57f87154b350b0f75d96713f6e1dd56101
Deleted: sha256:fdba3a2cd286d9a5f65fc00f5254048855ae7dc00f3b3fa3356981eb9a7fe6d0
Deleted: sha256:8b3a69042e0da82429d28be0c474e73290ba4908730de22b2200a7aac9b245bd
Deleted: sha256:90afe56a0643f5bf1b1e8ee147b40a8e12b3fdd7e26bc2d2c50180d68dd524d0
Deleted: sha256:e81bff2725dbc0bf2003db10272fef362e882eb96353055778a66cda430cf81b
# 删除全部镜像的 命令 $ 命令引用方式在 win10 无效
C:\Users\z>docker rmi -f $(docker imges -aq)
unknown shorthand flag: 'a' in -aq)
See 'docker rmi --help'.
3、容器命令

有了镜像才能创建容器

docker pull centos
新建容器并启动
docker run [可选参数] image
# 参数说明
--name Name #容器名字 可以通过一个镜像来运行多个容器 例如使用 Tomcat01 Tomcat02 进行区分
-d # 后台方式运行
-i # 保持标准 输入方式打开
-t # 分配给容器一个 为终端
-it # -t 和 -i 一起使用 就会以可交互的方式运行,并进入容器查看内容
-p
-p ip:主机port:容器port
-ip 本主机port:容器port
-p 容器port
容器port(不使用 -p 参数 也可以直接指定 容器运行的容器端口)
-P # 随机指定端口
列出所有运行的容器
docker ps    # 列出当前正在运行的容器
-a # 列出当前正在运行的容器 + 带出历史运行过的容器
-n=? # 显示最近创建的 前 n 个容器
-q # 只展示 容器的编号
退出容器
exit         # 直接退出同时停止容器
ctrl + P + Q # 退出容器但不停止
删除容器
docker rm 容器id    # 删除指定的容器,不能删除正在运行的容器, 如果要强制删除 rm -f
docker rm -f $(docker ps -aq) # 删除所有容器 (适用于Linux系统,windows 无效)
docker pa -a -q|xargs docker rm # 删除所有容器 (适用于Linux系统,windows 无效)
启动和停止容器
docker start 容器id
docker restart 容器id
docker stop 容器id
docker kill 容器id #强行停止当前容器

操作过程

C:\Users\z>docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
centos latest 5d0da3dc9764 8 weeks ago 231MB
# 启动并进入centos容器 []
C:\Users\z>docker run -it centos /bin/bash
[root@956311a69f5a /]# ls # 查看容器内的 centOS,这个镜像知识基础版本,很多命令都是不完善的
bin etc lib lost+found mnt proc run srv tmp var
dev home lib64 media opt root sbin sys usr
[root@956311a69f5a /]# exit
exit
# exit 命令会直接 将容器强行关闭
#docker ps 查看正在运行的容器
C:\Users\z>docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
C:\Users\z>docker ps -a #docker ps -a 查看所有容器
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
956311a69f5a centos "/bin/bash" 2 minutes ago Exited (0) 56 seconds ago affectionate_banzai
018dd3ae456f feb5d9fea6a5 "/hello" 2 hours ago Exited (0) 2 hours ago happy_wilbur C:\Users\z>docker ps -a -n=1 #参数 [-n=x] 对容器显示的数量进行限定
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
956311a69f5a centos "/bin/bash" 3 minutes ago Exited (0) About a minute ago affectionate_banzai
C:\Users\z>docker run -it centos /bin/bash
[root@d7c733c12c36 /]#
C:\Users\z>docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
d7c733c12c36 centos "/bin/bash" 30 seconds ago Up 29 seconds dreamy_galileo
C:\Users\z>docker run --name centos01 -it centos
[root@21a52707ecb7 /]#
# ! 此处使用 ctrl + P + Q 快捷方式 以不终止后台运行的方式 返回到宿主机的命令行
C:\Users\z>docker ps # 通过一个镜像可以运行多个容器
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
21a52707ecb7 centos "/bin/bash" 16 seconds ago Up 14 seconds centos01
d7c733c12c36 centos "/bin/bash" 10 minutes ago Up 10 minutes dreamy_galileo C:\Users\z>docker rm d7c733c12c36 # 不能直接删除正在运行的容器
Error response from daemon: You cannot remove a running container d7c733c12c36d7806ab103fb374e43cbae5fb224ea7ec1d68c80d86e3171ebb6. Stop the container before attempting removal or force remove C:\Users\z>docker rm -f d7c733c12c36 # [-f] force 强制删除容器
d7c733c12c36 C:\Users\z>docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
21a52707ecb7 centos "/bin/bash" About a minute ago Up About a minute centos01 C:\Users\z>docker rm -f $(docker ps -aq) # 在win10中这个命令不起作用
unknown shorthand flag: 'a' in -aq)
See 'docker rm --help'. C:\Users\z>docker ps -a -q|xargs docker rm # 在win10中这个命令不起作用
'xargs' 不是内部或外部命令,也不是可运行的程序
或批处理文件。 C:\Users\z>docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
21a52707ecb7 centos "/bin/bash" 6 minutes ago Up 6 minutes centos01 C:\Users\z>docker stop 21a52707ecb7
21a52707ecb7
C:\Users\z>docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES C:\Users\z>docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
21a52707ecb7 centos "/bin/bash" 8 minutes ago Exited (0) 8 seconds ago centos01
C:\Users\z>docker start 21a52707ecb7
21a52707ecb7 C:\Users\z>docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
21a52707ecb7 centos "/bin/bash" 9 minutes ago Up 25 seconds centos01

狂神说-Docker基础-学习笔记-02 Docker常用命令的更多相关文章

  1. docker学习笔记二:常用命令

    docker学习笔记二:常用命令 查看docker常用命令 docker --help 返回结果如下: 其中常用的命令如下: 1.image相关操作 展示所有的image: 删除image: rmi ...

  2. [Docker] docker 基础学习笔记1(共6篇)

    巩固一下yum: yum本身是centos自带的软件,可以删掉然后再重新安装. yum本身可以配置yum源,网络的,本地的都可以.之后安装docker需要配置一个扩展源.   从163的网址里边下载好 ...

  3. linux学习笔记2-linux的常用命令

    第一篇博客:linux学习笔记1-ubuntu的安装与基本设置 之中,已经介绍了如何安装linux操作系统,以及一些基本的设置修改. 本篇博客主要介绍linux中的一些常用的终端命令 ======== ...

  4. linux学习笔记2 - linux常用命令

    转载请标注原链接:http://www.cnblogs.com/xczyd/p/5543731.html 第一篇博客:linux学习笔记1-ubuntu的安装与基本设置 之中,已经介绍了如何安装lin ...

  5. Oracle学习笔记—数据字典和常用命令(转载)

    转载自: oracle常用数据字典和SQL语句总结 Oracle常用命令大全(很有用,做笔记) 一.Oracle数据字典 数据字典是Oracle存放有关数据库信息的地方,其用途是用来描述数据的.比如一 ...

  6. [Docker] docker 基础学习笔记3(共6篇)

    首先我们安装好了ssh server之后, 我们需要将这个容器commit,然后启动这个被commit的image. 启动方式: docker run -d -p 2222:22 /usr/sbin/ ...

  7. [Docker] docker 基础学习笔记2(共6篇)

    febootstrap 是一个自制image的一个第三方的工具,好像他们现在都要用这个.   安装还是挺方便的. yum -y install febootstrap   febootstrap -i ...

  8. [Docker] docker 基础学习笔记6(共6篇)

    这个迁移指的是docker整个系统的迁移,而不是说images存储位置迁移 docker info 查看docker的各项配置   首先做文件的迁移 使用rsync软件将docker的文件夹整体迁移到 ...

  9. [Docker] docker 基础学习笔记5(共6篇)

    docker 配置文件的位置: centos : /etc/sysconfig/docker ubuntu: /etc/default/docker   现在比如我自己电脑上已经装好了docker,但 ...

  10. [Docker] docker 基础学习笔记4(共6篇)

    离线安装nginx   apache 如何启动war包   linux 离线升级内核   nginx和Apache的使用   nginx 的负载均衡配置 是如此的简单,比weblogic的要简单100 ...

随机推荐

  1. SonarQube集成Xunit单元测试

    安装SonarQube 利用docker 安装SonarQube docker run -d --name sonarqube -e SONAR_ES_BOOTSTRAP_CHECKS_DISABLE ...

  2. ubuntu 安装osx 主题 转自linux公社

    繁體 你好,游客 登录 注册 搜索 首页Linux新闻Linux教程数据库技术Linux编程服务器应用Linux安全Linux下载Linux认证Linux主题Linux壁纸Linux软件数码手机电脑 ...

  3. 日均调度 10W+ 任务实例,DolphinScheduler 在蔚来汽车一站式数据治理开发平台的应用改造

    大家好我是张金明,在蔚来汽车担任大数据平台研发工程师.这次和大家分享的是 Apache DolphinScheduler 在蔚来汽车一站式数据治理开发平台的应用和改造,接下来我将从背景.应用现状和技术 ...

  4. Java反射初探123456789

    牛逼的框架都反射,不要问我为什么,因为我也不知道 可能是因为生成了class文件没法实例化,所以只能反射创建对象,但是在spring中,ioc就是反射实现的控制反转 看Spring4.x企业级开发实战 ...

  5. CH05_数组

    CH05_数组 概述 定义:一组相同类型的数据的集合. 描述: 1.数组中的每个元素都是相同的数据类型 2.数组是由连续的内存位置组成的. 3.数组索引是从0开始 一维数组 语法: 1.数据类型 数组 ...

  6. php预定义变量~$_SERVER[‘QUERY_STRING‘]

    php $_SERVER['QUERY_STRING']函数 • 简介$_SERVER函数( 获取当前服务器信息) 预定义变量就是系统自己定义好的变量,直接使用就可以.预定义变量都是以数组的形式存在的 ...

  7. idea启动项目发现端口被占用!!!导致启动不起来

    windows端口被占用 netstat -ano |findstr 端口号 任务管理器详细信息 PID排序找到刚才查到的 右键结束 原因: idea被异常终止导致tomcat没死

  8. 基于rabbitmq的事件总线

    在这个微服务火热的时代,如果不懂一点微服务相关的技术,想吹下牛都没有法子.于是有必要了解学习一下.所以我最近看了下微服务相关的知识.微服务所涉及的知识是很广的,我这里只是讲一下事件总线,当然,有现成很 ...

  9. One-for-All:上交大提出视觉推理的符号化与逻辑推理分离的新范式 | ECCV 2024

    通过对多样化基准的严格评估,论文展示了现有特定方法在实现跨领域推理以及其偏向于数据偏差拟合方面的缺陷.从两阶段的视角重新审视视觉推理:(1)符号化和(2)基于符号或其表示的逻辑推理,发现推理阶段比符号 ...

  10. Kubernetes-7:Pod健康检查原理-探针(就绪检测、存活检测)

    探针-就绪探测.存活探测 探针是由kubelet对容器执行的定期诊断,要执行诊断,kubelet调用由容器实现的Handler,有三种类型的处理程序: ExecActive:在容器内执行指定命令,若命 ...