Docker详解(二)
序言:上一章我们初步介绍了一下Docker的概念,那么这次我们着手于Docker的使用,了解一下常见的Docker的操作命令。此外不管学习什么东西,我们不但要了解纵向的知识体系,最好能加上横向的扩展,进行类比,Docker的命令风格和Git有着种种相似。好了废话不多说,我们开始Docker详解第二章吧。
1.Docker常用命令
开胃菜,Docker的帮助命令
docker version查看docker的版本信息docker info显示 Docker 系统信息,包括镜像和容器数docker --helpDocker的帮助命令
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详解(二)的更多相关文章
- Docker详解(三)
目录 1. Docker镜像 1.1 镜像存储 1.2 base镜像 1.3 镜像Commit 2. Docker容器数据卷 2.1 基本介绍 2.2 数据卷 2.3 数据卷容器 序言:前两章我们主要 ...
- Docker详解(四) — Dockerfile剖析
目录 1.Dockfile简介 2. Dockerfile构建过程解析 3. Dockerfile体系结构 4. 案例 4.1 自定义mycentos 4.2 CMD/ENTRYPOINT 镜像案例 ...
- .NET DLL 保护措施详解(二)关于性能的测试
先说结果: 加了缓存的结果与C#原生代码差异不大了 我对三种方式进行了测试: 第一种,每次调用均动态编译 第二种,缓存编译好的对象 第三种,直接调用原生C#代码 .net dll保护系列 ------ ...
- PopUpWindow使用详解(二)——进阶及答疑
相关文章:1.<PopUpWindow使用详解(一)——基本使用>2.<PopUpWindow使用详解(二)——进阶及答疑> 上篇为大家基本讲述了有关PopupWindow ...
- Android 布局学习之——Layout(布局)详解二(常见布局和布局参数)
[Android布局学习系列] 1.Android 布局学习之——Layout(布局)详解一 2.Android 布局学习之——Layout(布局)详解二(常见布局和布局参数) 3.And ...
- logback -- 配置详解 -- 二 -- <appender>
附: logback.xml实例 logback -- 配置详解 -- 一 -- <configuration>及子节点 logback -- 配置详解 -- 二 -- <appen ...
- 爬虫入门之urllib库详解(二)
爬虫入门之urllib库详解(二) 1 urllib模块 urllib模块是一个运用于URL的包 urllib.request用于访问和读取URLS urllib.error包括了所有urllib.r ...
- [转]文件IO详解(二)---文件描述符(fd)和inode号的关系
原文:https://www.cnblogs.com/frank-yxs/p/5925563.html 文件IO详解(二)---文件描述符(fd)和inode号的关系 ---------------- ...
- Android View 的绘制流程之 Layout 和 Draw 过程详解 (二)
View 的绘制系列文章: Android View 的绘制流程之 Measure 过程详解 (一) Android View 绘制流程之 DecorView 与 ViewRootImpl 在上一篇 ...
随机推荐
- Go中的异常处理
1. errors包 Go 有一个预先定义的 error 接口类型 : type error interface { Error() string } 错误值用来表示异常状态.Go也提供了一个包:er ...
- 使用windows powershell ISE管理命令窗口,并集成git命令
写于2018-09-03(基于win10) 开启 win + s 输入 ise 操作 主要使用新建的power shell选项卡 将git集成到power shell中 安装准备 确定你的power ...
- 关于JSP页面的静态包含和动态包含
JSP中有两种包含:静态包含:<%@include file="被包含页面"%> 和 动态包含:<jsp:include page="被包含页面&quo ...
- 关于int的范围以及溢出问题
最近在练一些算法题目的时候恰巧碰到了几道关于int范围与溢出相关的问题,于是就整理一下. 1.原码.补码 在计算机中数值都是用补码表示和存储的(正数补码与原码一致,负数补码是原码符号位不变,其余位取反 ...
- AutoCAD二次开发(.Net)之创建图层Layer
//https://blog.csdn.net/qq_21489689?t=1[CommandMethod("CREATELY")] public void CreateLayer ...
- 【I'm Telling the Truth】【HDU - 3729】 【匈牙利算法,DFS】
思路 题意:该题主要说几个同学分别说出自己的名次所处区间,最后输出可能存在的未说谎的人数及对应的学生编号,而且要求字典序最大. 思路:刚刚接触匈牙利算法,了解的还不太清楚,附一个专门讲解匈牙利算法的博 ...
- 设计一个完美的http缓存策略
1.前言 作为一个前端,了解http缓存是非常必要,它不仅是面试的必要环节,也更是实战开发中必不可少需要了解的知识点,本文作者将从缓存的概念讲到如何在业务中设计一个合理的缓存架构,带你一步一步解开ht ...
- 性能测试学习第三天-----loadrunner接口测试&中文乱码处理
loadrunner 接口测试: get.post(3种参数格式).cookie及token处理.加密接口.webservice.socket.文件上传接口.文件下载接口 & 中 ...
- 【在 Nervos CKB 上做开发】Nervos CKB脚本编程简介[2]:脚本基础
CKB脚本编程简介[2]:脚本基础 原文作者:Xuejie 原文链接:Introduction to CKB Script Programming 2: Script 本文译者:Shooter,Jas ...
- 智能家居系列之——WIFI小车
2017年准备搬新家了,一直关注着树莓派的论坛,看有没有新玩意,想着今年过年在杭州过年,头一次在城里过年,感觉特别无聊,没有麻将可以打,没有鞭炮可以放,只能在家做做小玩意.从小就对四驱车有兴趣,一直想 ...
