docker03-常用命令
1.docker基础命令
1.1docker启动
指令:service docker start

1.2查看状态
指令:service docker status

1.3重启docker
指令:service docker restart

1.4停止docker
指令:service docker stop

注意,先停止运行的容器
1.5查看docker版本
指令:docker version

1.6查看docker信息
指令:docker info

1.7帮助
指令:docker help

可以看到Commands(命令)和Options(选项)
2.镜像指令
2.1列出本机所有的镜像
指令:docker images [选项]
-a :列出本地所有的镜像(含中间映像层)(镜像相当于是千层饼,docker image列出的是最上层的,加上-a,把里面的也列出来了)
-q :只显示镜像ID。
--digests :显示镜像的摘要信息
--no-trunc :显示完整的镜像信息 (trunc是截取的意思 --no=trunc就是不截取显示完整的)

REPOSITORY:表示镜像的仓库源
TAG:镜像的标签(相当于版本号)
IMAGE ID:镜像ID
CREATED:镜像创建时间
SIZE:镜像大小
同一仓库源可以有多个 TAG,代表这个仓库源的不同个版本,我们使用 REPOSITORY:TAG 来定义不同的镜像。如果你不指定一个镜像的版本标签,例如你只使用 ubuntu,docker 将默认使用 ubuntu:latest 镜像,也就是最新版本
2.2查询镜像
指令:docker search [选项] 镜像名字
--no-trunc : 显示完整的镜像描述
-s : 列出收藏数不小于指定值的镜像。
--automated : 只列出 automated build类型的镜像;
注意,这里search是从dockerhub去查询的,哪怕配置了其他的镜像仓库地址

NAME:唯一名称
DEDCRIPTION:描述
STARS:点赞收藏数量
AUTOMATED:自动
2.3拉取镜像
指令:docker pull 镜像名称[:tag]
不加版本号拉取的是最新的版本

2.4删除镜像
指令:docker rmi 镜像名称或者id [选项]
-f 强制删除

2.5删除多个
指令:docker rmi -f 镜像名1[:TAG] 镜像名2[:TAG]


3.容器命令
3.1查看容器
指令:docker ps [选项](不带选项是查看正在运行的日期)
-a :列出当前所有正在运行的容器+历史上运行过的(没有删除的)
-l :显示最近创建的容器。
-n:显示最近n个创建的容器。
-q :静默模式,只显示容器编号。
--no-trunc :不截断输出
3.2创建容器并启动
d指令:ocker run 镜像名称/id [选项]
--name="容器新名字": 为容器指定一个名称,若不指定,会随机分配唯一名字;
-d: 后台运行容器,并返回容器ID,也即启动守护式容器;
-i:以交互模式运行容器,通常与 -t 同时使用;
-t:为容器重新分配一个伪输入终端,通常与 -i 同时使用;
-P: 随机端口映射;
-p: 指定端口映射,有以下四种格式
ip:hostPort:containerPort
ip::containerPort
hostPort:containerPort
containerPort

最后面的NAMES就是容器名称
3.2.1常用的第一种模式-交互模式
指令:docker run --name 名称 -it 镜像名字/id
这种启动模式指定了名称(比较好分辨),关键是交互模式启动,且有一个伪终端

如上图,这样子启动后,就进入了这个容器的交互终端。这里启动的是centos,所以执行ls命令,可以查看容器里面的centos的根目录。
3.7.2常用的第二种模式-守护进程模式
指令:docker run --name 名称 -d 镜像名称/id
问题:
指令命令docker run -d centos:6.8

然后docker ps -a 进行查看, 会发现容器已经退出
很重要的要说明的一点: Docker容器后台运行,就必须有一个前台进程.
容器运行的命令如果不是那些一直挂起的命令(比如运行top,tail),就是会自动退出的。
这个是docker的机制问题,比如你的web容器,我们以nginx为例,正常情况下,我们配置启动服务只需要启动响应的service即可。例如
service nginx start。但是,这样做,nginx为后台进程模式运行,就导致docker前台没有运行的应用,这样的容器后台启动后,会立即自杀因为他觉得他没事可做了.
所以,最佳的解决方案是,将你要运行的程序以前台进程的形式运行

这样子启动,会一直打印 hello zzyy到控制台,有前台进程在运行,就不会关闭
3.3退出容器
注意:退出容器不等于停止容器,是两个概念
1)指令:exit
容器停止退出

2)指令ctrl+P+Q
容器不停止退出
3.4进入容器
1)指令: docker exec -it 容器ID bashShell
exec 是在容器中打开新的终端,并且可以启动新的进程

在容器外部就可以执行容器里面的命令
2)指令:docker attach 容器ID
attach 直接进入容器启动命令的终端,不会启动新的进程

3.5启动容器
指令:docker start 容器名称/id

3.6重启容器
指令:docker restart 容器名字/id

3.7停止容器
指令:docker stop 容器名字/id

3.8强制停止容器
指令:docker kill 容器名称/id

3.9删除容器
3.9.1删除单个
指令:docker rm 容器名称/id

3.9.2删除多个
指令:docker rm 容器名称/id 容器名称/id

3.10查看日期日志
指令:docker logs -f -t --tail 容器ID
* -t 是加入时间戳
* -f 跟随最新的日志打印
* --tail 数字 显示最后多少条


3.11查看容器内运行的进程
指令:docker top 日期名称/id

2.12查看容器内详细内容
指令:docker inspect 容器名称/id

3.12从容器复制文件到主机
指令:docker cp 容器ID:容器内路径 目的主机路径

3.13根据容器创建新的镜像commit
docker commit提交容器副本使之成为一个新的镜像
指令:docker commit -m=“提交的描述信息” -a=“作者” 容器ID 要创建的目标镜像名:[标签名]
1)启动一个centos容器

2)进入容器

3)查看根目录
在根目录下创建目录myimages,在myimages目录下创建文件11.txt,写入内容:commit create new images

4)ctrl+p+q退出容器
5)执行commit命令

执行成功后,查看镜像,发现新的镜像已经生成了
6)启动新的镜像并查看

启动镜像进入容器,查看根目录,发现myimages目录,下面有11.txtx文件,文件内容为之前写入的内容
说明之前在容器添加了myimages目录和11.txt文件,然后生成新的镜像,它们都保存到新的镜像中了
docker03-常用命令的更多相关文章
- Linux 常用命令(持续补充)
常用命令: command &:将进程放在后台执行 ctrl + z:暂停当前进程 并放入后台 jobs:查看当前后台任务 bg( %id):将任务转为后台执行 fg( %id):将任务调回前 ...
- LVM基本介绍与常用命令
一.LVM介绍LVM是 Logical Volume Manager(逻辑卷管理)的简写,它是Linux环境下对磁盘分区进行管理的一种机制LVM - 优点:LVM通常用于装备大量磁盘的系统,但它同样适 ...
- Linux学习笔记(一):常用命令
经过统计Linux中能够识别的命令超过3000种,当然常用的命令就远远没有这么多了,按照我的习惯,我把已经学过的Linux常用命令做了以下几个方面的分割: 1.文件处理命令 2.文件搜索命令 3.帮助 ...
- git常用命令(持续更新中)
git常用命令(持续更新中) 本地仓库操作git int 初始化本地仓库git add . ...
- 【原】npm 常用命令详解
今年上半年在学习gulp的使用,对npm的掌握是必不可少的,经常到npm官网查询文档让我感到不爽,还不如整理了一些常用的命令到自己博客上,于是根据自己的理解简单翻译过来,终于有点输出,想学习npm这块 ...
- npm常用命令
npm常用命令 环境:win7 npm 是什么 NPM(node package manager),通常称为node包管理器.顾名思义,它的主要功能就是管理node包,包括:安装.卸载.更新.查看.搜 ...
- Git 常用命令
一.初始環境配置 git config --global user.name "John Doe"git config --global user.email johndoe@ex ...
- linux iptables常用命令之配置生产环境iptables及优化
在了解iptables的详细原理之前,我们先来看下如何使用iptables,以终为始,有可能会让你对iptables了解更深 所以接下来我们以配置一个生产环境下的iptables为例来讲讲它的常用命令 ...
- Linux常用命令(一)
Linux常用命令 1. pwd查看当前路径(Print Working Directory) [root@CentOS ~]# pwd/root 2. cd .. 返回上一级 .. 表示上一级 ...
- 版本控制-svn服务器搭建和常用命令(centos 6.3)
Svn是比较优秀的版本控制工具,虽然功能和性能上无法和Git媲美,但由于其容易搭建和使用的特性,所以在各个小公司还是很受欢迎的.使用Git可参考<版本控制-Git服务器搭建和常用命令使用> ...
随机推荐
- netty系列之:来,手把手教你使用netty搭建一个DNS tcp服务器
目录 简介 搭建netty服务器 DNS服务器的消息处理 DNS客户端消息请求 总结 简介 在前面的文章中,我们提到了使用netty构建tcp和udp的客户端向已经公布的DNS服务器进行域名请求服务. ...
- 2022-11-13 Acwing每日一题
本系列所有题目均为Acwing课的内容,发表博客既是为了学习总结,加深自己的印象,同时也是为了以后回过头来看时,不会感叹虚度光阴罢了,因此如果出现错误,欢迎大家能够指出错误,我会认真改正的.同时也希望 ...
- MongoDB - 索引知识
索引简介 什么是索引 索引最常用的比喻就是书籍的目录,查询索引就像查询一本书的目录. 索引支持 MongoDB 查询的高效执行.如果没有索引,MongoDB 必须扫描集合中每一个文档,以选择与查询语句 ...
- python进阶(29)单例模式
初识单例模式 单例模式含义 单例模式,也叫单子模式,是一种常用的软件设计模式.在应用这个模式时,单例对象的类必须保证只有一个实例存在.许多时候整个系统只需要拥有一个的全局对象,这样有利于我们协调系统整 ...
- Linux deb系统 nginx 配置解析php
如果你是root用户可以不加sudo 首先安装php php-fpm nginx sudo apt-get install php php-fpm nginx -y nginx 是一个轻量级的http ...
- Java开发学习(四十六)----MyBatisPlus新增语句之id生成策略控制及其简化配置
在前面有一篇博客:Java开发学习(四十一)----MyBatisPlus标准数据层(增删查改分页)开发,我们在新增的时候留了一个问题,就是新增成功后,主键ID是一个很长串的内容. 我们更想要的是按照 ...
- 全网最全的linux上docker安装oracle的详细文档,遇到了n个问题,查了几十篇文章,最终汇总版,再有解决不了的,私聊我,我帮你解决
目录 全网最全的linux上docker安装oracle的详细文档,遇到了n个问题,查了几十篇文章,最终汇总版,再有解决不了的,私聊我,我帮你解决 1. 拉取阿里镜像oracle 2. 创建初始化数据 ...
- Django视图层/FBV与CBV/jsonResponse对象/form表单上传文件/request对象获取文件
目录 虚拟环境 视图层views 三板斧 jsonResponse对象 form如何上传文件/request对象获取文件 request对象方法 FBV与CBV CBV源码解析 虚拟环境 每创建一个虚 ...
- 常用内置模块os sys json
今日内容回顾 目录 今日内容回顾 os模块 sys模块 json模块 json模块实战 os模块 sys模块 json模块 os模块 os模块主要与代码运行的操作系统打交道 1.创建目录(文件夹) i ...
- Jmeter 之提取的值为null时,if控制器中的判断表达式
场景:当level的值为null时则执行 {"code":0, "msg":null, "data": [ { "level&qu ...