docker

docker简介

什么是docker

docker是一个能够把开发的应用程序自动部署到容器的开源引擎。

  • 1、提供简单、轻量的建模方式
  • 2、职责逻辑分离:开发秩序关心容器中的程序,运维只需关心容器本身
  • 3、快速、高效的开发
  • 4、面向服务的架构

docker核心组件

  • docker客户端和服务器
  • docker镜像
  • registry
  • docker容器

docker容器就是:

  • 一个镜像格式
  • 一系列标准的操作
  • 一个执行环境

docker就像一个集装箱,所不同的是集装箱运输货物,而docker运输的是软件。
使用docker可以快速的部署应用服务器、消息总线、使用工具、集成测试环境。

docker应用场景

  • 加速本地开发和构建流程,更加高效、轻量化。
  • 让独立服务器或者应用程序在不同的环境中,得到相同的运行结果。
  • 可以用docker进行隔离环境测试。
  • docker可以让开发者在本地进行复杂的程序或者架构的测试,而不是必须部署到生产环境中。
  • 可以构建PaaS基础设施服务。
  • 为开发、测试提供轻量级的沙盒环境。
  • 提供软件即服务SaaS应用程序。
  • 实现超大规模的宿主机部署。

docker的技术组件

libcontainer格式现在是docker容器的默认格式。

  • 文件系统隔离:每个容器都有自己的root文件系统
  • 进程隔离:每个容器都运行在自己的进程环境中
  • 网络隔离:容器间的虚拟网络接口和IP地址是分开的
  • 资源隔离和分组:使用cgroups江CPU和内存之类的资源独立分配给每个容器
  • 写时复制:文件系统时通过写时复制创建,意味着文件系统时分层、快速的,占用磁盘空间更小。
  • 日志:容器产生的STDOUT、STDERR和STDIN这些IO流都会收集并记录日志,可用于快速分析和故障排查
  • 交互式shell:用户可以创建一个伪tty终端,连接到STDIN,为容器提供一个交互式的shell

几个比较实用的命令

  • 杀死所有正在运行的容器
    docker kill $(docker ps -a -q)

  • 删除所有已经停止的容器
    docker rm $(docker ps -a

  • 删除所有未打 dangling 标签的镜像
    docker rmi $(docker images -q -f dangling=true)

  • 删除所有镜像
    docker rmi $(docker images -q)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Docker — 云时代的程序分发方式 要说最近一年云计算业界有什么大事件?Google Compute Engi...
    ahohoho阅读 15,686评论 15 147
  • 0. 前言 docker是什么?docker是用GO语言开发的应用容器引擎,基于容器化,沙箱机制的应用部署技术。可...
    sessionboy阅读 3,899评论 2 49
  • 写这篇文章主要是为了今后毕业论文素材上的整理,同时对docker进行巩固温习。大纲: docker简介docker...
    胡图仙人阅读 7,567评论 2 96
  • 过团城·秋思 四角红墙抹霜色, 一树银杏摇秋风。 却向灯火阑珊处, 细听铜环叩门声。
    秋商阅读 205评论 1 2
  • 近来,心情不好,不想交流,不想吐露,沉重的,瞎忙活。睡觉,吃饭,学习,兼职……一切依旧。 每天,14路公交是最好...
    FlukeLu阅读 426评论 1 3