序言:上一章我们初步介绍了一下Docker的概念,那么这次我们着手于Docker的使用,了解一下常见的Docker的操作命令。此外不管学习什么东西,我们不但要了解纵向的知识体系,最好能加上横向的扩展,进行类比,Docker的命令风格和Git有着种种相似。好了废话不多说,我们开始Docker详解第二章吧。

Docker详解(一)
 

1.Docker常用命令

开胃菜,Docker的帮助命令

  1. docker version 查看docker的版本信息
  2. docker info 显示 Docker 系统信息,包括镜像和容器数
  3. docker --help Docker的帮助命令

 

1.1 镜像命令

①、docker images 列出本地主机上的镜像

参数说明:例:docker images -a

-a:列出本地所有的镜像(含中间镜像层)

-q:只显示镜像ID

--digests:显示镜像的摘要信息

--no-trunc:显示完整的镜像信息

各个选项说明:

REPOSITORY:表示镜像的仓库源

TAG:镜像的标签

IMAGE ID:镜像ID

CREATED:镜像创建时间

SIZE:镜像大小

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

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

 

 

②、docker search 从仓库中搜索指定的镜像

参数说明:例:docker serarch -s 10 tomcat

--no-trunc:显示完整的镜像描述

-s:列出收藏数不小于指定值的镜像

--automated:只列出 automated build类型的镜像

 

 

③、docker rmi -f 删除镜像

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

 

 

④、docker pull 下载镜像

参数说明:例:docker pull tomcat

 

1.2 容器命令

注意:有镜像才能创建容器,这是一个根本前提

1.2.1 常用的容器命令

①、docker run [option] image [command] 新建并启动容器

参数说明:例:docker run -it centos /bin/bash

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

--name="容器新名字": 为容器指定一个名称;

-d: 后台运行容器,并返回容器ID,也即启动守护式容器;

-i:以交互模式运行容器,通常与 -t 同时使用;

-t:为容器重新分配一个伪输入终端,通常与 -i 同时使用;

-P: 随机端口映射;

-p: 指定端口映射;

 

②、docker ps 列出当前所有正在运行的容器

参数说明: 例:docker ps

-a:列出当前所有正在运行的容器+历史上运行过的

-l:显示最近创建的容器

-n:显示最近n个创建的容器

-q:静默模式,只显示容器编号

--no-trunc:不截断输出

 

③、退出容器,两种退出方式

exit 容器停止退出

ctrl + p + q 容器不停止退出

 

④、容器启停命令

  • 启动容器:docker start 容器ID或者容器名
  • 重启容器:docker restart 容器ID或者容器名
  • 停止容器:docker stop 容器ID或者容器名
  • 强制停止容器:docker kill 容器ID或者容器名

 

⑤、删除已停止的容器

  • 删除单个容器:docker rm 容器ID
  • 删除多个容器:docker rm -f $(docker ps -a -q)

 

1.2.2 重要的容器命令

①、 docker run -d 容器名 启动守护式容器

说明: Docker容器后台运行就必须有一个前台进程,容器运行的命令如果不是那些一直挂起的命令(比如运行top,tail),就是会自动退出的。

 

②、docker logs -f -t --tail 容器ID

-t:是加入时间戳

-f:跟随最新的日志打印

--tail:数字显示最后多少条

 

③、docker top 容器ID 查看容器内运行的进程

 

④、docker inspect 容器ID 查看容器内部细节

 

⑤、进入正在运行的容器并以命令行交互

  • docker exec -it 容器ID bashShell 在容器中打开新的终端,并且可以启动新的进程

 

  • docker attach 容器ID 直接进入容器终端的命令,不会启动新的进程

 

⑥、docker cp 容器ID:容器内路径 目标主机路径 从容器内拷贝文件到主机上

Docker详解(二)的更多相关文章

  1. Docker详解(三)

    目录 1. Docker镜像 1.1 镜像存储 1.2 base镜像 1.3 镜像Commit 2. Docker容器数据卷 2.1 基本介绍 2.2 数据卷 2.3 数据卷容器 序言:前两章我们主要 ...

  2. Docker详解(四) — Dockerfile剖析

    目录 1.Dockfile简介 2. Dockerfile构建过程解析 3. Dockerfile体系结构 4. 案例 4.1 自定义mycentos 4.2 CMD/ENTRYPOINT 镜像案例 ...

  3. .NET DLL 保护措施详解(二)关于性能的测试

    先说结果: 加了缓存的结果与C#原生代码差异不大了 我对三种方式进行了测试: 第一种,每次调用均动态编译 第二种,缓存编译好的对象 第三种,直接调用原生C#代码 .net dll保护系列 ------ ...

  4. PopUpWindow使用详解(二)——进阶及答疑

      相关文章:1.<PopUpWindow使用详解(一)——基本使用>2.<PopUpWindow使用详解(二)——进阶及答疑> 上篇为大家基本讲述了有关PopupWindow ...

  5. Android 布局学习之——Layout(布局)详解二(常见布局和布局参数)

    [Android布局学习系列]   1.Android 布局学习之——Layout(布局)详解一   2.Android 布局学习之——Layout(布局)详解二(常见布局和布局参数)   3.And ...

  6. logback -- 配置详解 -- 二 -- <appender>

    附: logback.xml实例 logback -- 配置详解 -- 一 -- <configuration>及子节点 logback -- 配置详解 -- 二 -- <appen ...

  7. 爬虫入门之urllib库详解(二)

    爬虫入门之urllib库详解(二) 1 urllib模块 urllib模块是一个运用于URL的包 urllib.request用于访问和读取URLS urllib.error包括了所有urllib.r ...

  8. [转]文件IO详解(二)---文件描述符(fd)和inode号的关系

    原文:https://www.cnblogs.com/frank-yxs/p/5925563.html 文件IO详解(二)---文件描述符(fd)和inode号的关系 ---------------- ...

  9. Android View 的绘制流程之 Layout 和 Draw 过程详解 (二)

    View 的绘制系列文章: Android View 的绘制流程之 Measure 过程详解 (一) Android View 绘制流程之 DecorView 与 ViewRootImpl 在上一篇  ...

随机推荐

  1. WebGL简易教程(二):向着色器传输数据

    目录 1. 概述 2. 示例:绘制一个点(改进版) 1) attribute变量 2) uniform变量 3) varying变量 3. 结果 4. 参考 1. 概述 在上一篇教程<WebGL ...

  2. JavaWeb——Servlet开发2

    1.HttpServletRequest的使用 获取Request的参数的方法. 方法getParameter将返回参数的单个值 方法getParameterValues将返回参数的值的数组 方法ge ...

  3. Java并发编程实战笔记—— 并发编程3

    1.实例封闭 class personset{ private final Set<Person> myset = new HashSet<Person>(); public ...

  4. Python递归函数,二分查找算法

    目录 一.初始递归 二.递归示例讲解 二分查找算法 一.初始递归 递归函数:在一个函数里在调用这个函数本身. 递归的最大深度:998 正如你们刚刚看到的,递归函数如果不受到外力的阻止会一直执行下去.但 ...

  5. Java Web基础面试题整理

    Tomcat的缺省端口是多少,怎么修改 tomcat默认缺省端口是8080 修改方法: 找到Tomcat目录下的conf文件夹 进入conf文件夹里面找到server.xml文件 打开server.x ...

  6. java 购物商城小项目训练

    java web 模拟购物车练习(项目一) 首页(index.jsp) <div align="center" class="index"> < ...

  7. AOSP 预置 APP

    Android 系统预置 APP 是做 Framework 应用开发经常经常会遇到的工作,预置 APP 分为两种,一种是直接预置 APK,一种是预置带有源码的 APP. 预置 apk 示例说明 以 . ...

  8. MYSQL 入门配置

    1.下载 MYSQL官网 2.目录结构图基本如下 3.运行CMD(管理员权限),进入MYSQL目录下面的bin目录 4.执行 mysqld install 5.执行 net start mysql 6 ...

  9. vue 异步加载远程组件(支持编译less语法)

    本代码已组件化,可以直接使用. 说明:本组件可以直接解析.vue文件,为了支持less语法解析,在组件中引入less.js,可在less官网下载. 组件代码 <template> < ...

  10. poj3415_Common Substrings

    题意 给定两个字符串,求长度大于等于k的公共子串数. 分析 将两个字符串中间加个特殊字符拼接,跑后缀数组. 将题目转化为对每一个后缀求\(\sum_{j=1}^{i-1}lcp(i,j)\),且后缀\ ...