基础概念

容器是镜像的一个运行时的状态。镜像是静态的只读文件,容器是带有运行时需要的可写文件层,容器中的应用进程处于运行状态。

容器和虚拟机的差别:

  • 容器:独立运行的一组应用以及这组应用所必须的运行环境
  • 虚拟机:模拟运行的一整套操作系统,包括内核和应用运行环境等

基本操作

创建容器

使用create命令创建可运行的容器,实例

docker create -it [IMAGE[:TAG]]  # 创建命令
docker ps -a  # 查看命令


之后执行start可以启动容器:

docker start [CONTAINER-ID]

也可以使用run命令直接创建并启动一个容器

docker run zookeeper:latest

创建容器时,docker在后台执行的操作是:

注意上面的-it选项,-t表示开启一个 伪终端,-i表示让容器的标准输入保持打开。如果想要容器在后台保持运行,则使用-d参数即可。
使用logs命令可以观察输出,比如:

docker logs 1ece4ccaa5a9

使用--name可以指定启动容器的别名,比如:

docker run zookeeper:latest --name test

注意点:启动一个容器后,如果容器中没有运行的进程,那么容器会自动停止,避免消耗系统资源
ubuntu的容器为例子,后台启动ubuntu,观察现象:

之后使用ps命令进行观测:

可以看出,ubuntu启动后就立刻停止了,因为内部没有进程运行。之后执行docker ps没有输出,ps本身只输出正在运行的容器;而添加-a参数,即docker ps -a后,可以看到ubuntu是一个停止的容器。但是它还是在容器中。

使用交互命令的操作,启动ubuntu的容器,之后进入bash的交互:

新启动一个终端,观察正在运行的进程:

此时,我们可以观测到ubuntu是一个正在运行的容器,因为有bash进程在运行。

暂停和停止容器

使用pause命令暂停容器:

docker pause 1ece4ccaa5a9

![](https://img-blog.csdnimg.cn/20190817201957512.png)
容器的状态显示为暂停了。

使用stop会终止容器,执行prune命令会自动清除掉所有处于停止状态的容器

docker stop 1ece4ccaa5a9
docker container prune

进入容器

-d参数是让容器在后台运行,无法看到容器的信息,也无法在容器中进行操作。此时使用attach命令可以进入容器。

docker attach mycontainer

多个窗口同时开启时,所有的信息都会显示,不太方便。

exec命令可以在容器内直接执行任意命令,基本格式是:

docker exec -it ubuntu /bin/bash # 启动ubuntu的容器,然后开启一个bash终端

几个常用的参数:

删除容器

rm命令用于删除处于终止或者退出状态的容器,代码实例:

如果想要通过rm删除正在运行的容器,可以直接使用-f参数。

导入和导出容器

该命令主要用于把容器从一个系统迁移到另一个系统。

导出是指把一个已经创建的容器导出到一个文件,不论该容器是否处于运行的状态。借助export命令实现。

docker export [CONTAINER_NAME] -o [NAME]


把导出的文件作为镜像导入docker中,基本命令:

docker import zk.tar - test/zk

上一篇笔记中提到的loadsave也可以实现有关的功能,区别在于:

  • load:导入镜像存储文件到本地的镜像库,这是最完整的保存方式
  • import:仅导入一个容器快照到本地的镜像库,丢失所有的历史记录和元数据信息,仅仅保留容器当时的快照状态

查看容器

insperct用于查看容器信息。

使用top命令可以查看容器内进程等的信息,类似linux的top命令

status命令是查看具体的统计信息:

docker stats zk

其他命令

  • container cp:仅用于容器和主机之间复制文件
  • container diff:查看容器内文件系统的变更
  • container port:查看容器的端口映射情况
  • container update:更新容器的运行时配置

Docker笔记2 容器及其基本操作相关推荐

  1. docker笔记13 - 容器间的单双向通信

    1.容器间基于Link实现单向通信 镜像列表 [root@iZbp1e9mxelwe7pwimpw8sZ ~]# docker images REPOSITORY TAG IMAGE ID CREAT ...

  2. Docker笔记--创建容器、退出容器、查看容器、进入容器、停止容器、启动容器、删除容器、查看容器详细信息

    目录 1--docker run创建容器 2--exit退出容器 3--docker ps查看容器 4--docker exec进入容器 5--docker stop停止容器 6--docker st ...

  3. docker笔记之容器镜像命令

    文章目录 一.镜像命令 二.容器命令 三.总结 一.镜像命令 #查看所有的镜像 [root@iZbp10d5h2h0qbsabf055iZ docker]# docker images REPOSIT ...

  4. 【Docker系列】容器快速上手

    Docker CLI 命令行介绍 Docker Version Windows (Intel芯片) Server 的 OS/Arch: linux/amd64 是因为Windows内置的hyper-V ...

  5. docker容器的基本操作

    docker容器的基本操作 一.镜像(image) 1.获取镜像 2.镜像基本查看: 3.表示镜像唯一性的方法: ①.REPOSITORY:TAG ②.IMAGE ID(sha256:64位的号码,默 ...

  6. 安装docker与docker镜像和容器基本的基本操作

    安装docker与docker镜像和容器基本的基本操作 前言 一.docker安装步骤详解 二.网络优化 三.Docker-server端配置文件建议配置 四.Doceker基本命令(运维) (1)查 ...

  7. 03-docker系列-docker容器的基本操作

    声明:本文乃"运维家"原创,转载请注明出处,更多内容请关注公众号"运维家". 主旨 本文主要介绍下docker容器的基本操作. 环境 linux环境 ddock ...

  8. docker 基础命令操作 镜像以及容器的基本操作演示

    tomcat启动后',可以通过页面访问到默认页面,可以更加直观的显示出来:我们就以tomcat为例,对镜像,容易的基础操作进行演示: 1.查询镜像命令 docker search tomcat , 运 ...

  9. Docker镜像与容器基本操作

    Docker镜像与容器基本操作 一.Docker基本命令 1.查看docker版本 2.搜索镜像和dockerhub 3.下载镜像 4.docker run 5.查看所有状态容器 二.docker镜像 ...

最新文章

  1. python图片找字_如何用python查找图像中的字母
  2. 设计模式4-创建型模式-Prototype模式
  3. 浅谈iOS中的蓝牙技术(一) GameKit framework
  4. spring cloud config-配置中心
  5. 刀片服务器接显示器,刀片服务器的vga切换方法
  6. Spring Bean 生命周期
  7. 手把手搭建K3cloud插件开发环境
  8. Oracle官网登录用户名密码
  9. 如何将分表汇总到总表_如何把多个Excel表格合并到一起,分表变,总表也自动更新?...
  10. flutter doctor --android-licenses
  11. BLAM源码解析(一)—— 模块初始化
  12. 定时任务-动态定时任务(springboot+org.quartz)
  13. MySQL 1366错误
  14. 绝地求生为何显示服务器上限,绝地求生服务器为啥不给力?官方解释:人太多了...
  15. Microsoft Security Essentials Beta 出自微软的单机版缉毒尖兵
  16. C语言递归函数(递归调用)详解[带实例演示]
  17. i3-1115G4 怎么样 相当于什么水平
  18. 视频聊天室如何成功赚钱分享攻略二
  19. shell脚本-检查一组命令所花费的时间
  20. 单片机 模拟电子闹钟 c语言,分享一个LCD1602电子闹钟 双闹版 带单片机源程序

热门文章

  1. avg最多用多少列 mysql_使用MySQL中的AVG函数求平均值的教程
  2. 解密flash播放器
  3. 数据结构实验 3.抓住那头牛
  4. GiraffeDet的学习笔记
  5. 【PAT】1002 写出这个数
  6. 好用好玩的Python包
  7. one stage 与two stage解释
  8. 使用NodeJS连接到MySQL数据库Client does not support authentication protocol requested by server; consider upg
  9. Lucene全文检索_分词_复杂搜索_中文分词器
  10. 表格中点击获得行列的值、刷新页面