随笔分类 - docker
the docker learning
摘要:pip pip install runlike by docker alias runlike="docker run --rm -v /var/run/docker.sock:/var/run/docker.sock assaflavie/runlike" runlike -p $容器id ali
阅读全文
摘要:容器具有以下特性: 容器是短期存活的,并且可以动态调度; 容器的本质是进程,而不是一个完整操作系统; 由于容器非常轻量,容器的创建和销毁也会比传统虚拟机更加频繁。 Docker 容器的监控方案有很多,除了 Docker 自带的docker stats命令,还有很多开源的解决方案,例如 sysdig、
阅读全文
摘要:遵循以下 Dockerfile 书写原则,不仅可以使得我们的 Dockerfile 简洁明了,让协作者清楚地了解镜像的完整构建流程,还可以帮助我们减少镜像的体积,加快镜像构建的速度和分发速度。 (1)单一职责 由于容器的本质是进程,一个容器代表一个进程,因此不同功能的应用应该尽量拆分为不同的容器,每
阅读全文
摘要:我们从 Docker Hub 拉取的官方操作系统镜像大多数都是 UTC 时间(世界标准时间)。如果你想要在容器中使用中国区标准时间(东八区),请根据使用的操作系统修改相应的时区信息: Ubuntu 和Debian 系统可以向 Dockerfile 中添加以下指令: RUN ln -sf /usr/s
阅读全文
摘要:容器是什么 容器是基于镜像创建的可运行实例,并且单独存在,一个镜像可以创建多个容器。运行容器化环境时,实际上是容器内部创建该文件的读写副本。这将添加一个容器层,该层允许修改镜像的整个副本。 容器的生命周期 容器的生命周期是容器可能处于的状态,容器的生命周期分为 5 种。 created:初建状态 r
阅读全文
摘要:dockerfile Dockerfile指令 指令简介 FROM Dockerfile 除了注释第一行必须是 FROM ,FROM 后面跟镜像名称,代表要基于哪个基础镜像构建我们的容器。 RUN RUN 后面跟一个具体的命令,类似于 Linux 命令行执行命令。 ADD 拷贝本机文件或者远程文件到
阅读全文
摘要:Docker 核心概念 镜像 镜像是一个只读的文件和文件夹组合。它包含了容器运行时所需要的所有基础文件和配置信息,是容器启动的基础。所以你想启动一个容器,那首先必须要有一个镜像。镜像是 Docker 容器启动的先决条件。 容器 容器是什么呢?通俗地讲,容器是镜像的运行实体。镜像是静态的只读文件,而容
阅读全文
摘要:容器技术原理 chroot 通俗地说 ,chroot 就是可以改变某进程的根目录,使这个程序不能访问目录之外的其他目录,这个跟我们在一个容器中是很相似的。 docker是利用Linux的Namespace、Cgroups和联合文件系统三大机制来实现的,基本原理是使用Namespace做主机名、网络、
阅读全文
摘要:centos下安装docker 卸载已经安装的docker $ sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotat
阅读全文
摘要:Docker的使用 docker是一个用于开发,发布和运行应用程序的开放平台。
阅读全文
摘要:我们知道在 Docker v17.05 版本后就开始支持多阶段构建 (multistage builds)了,使用多阶段构建我们可以加速我们的镜像构建,在一个 Dockerfile 文件中分不同的阶段来处理镜像。 例如,如下所示的多阶段构建的 Dockerfile 文件: FROM golang:1
阅读全文
摘要:docker常见退出码 Exit Code 0 退出代码0表示特定容器没有附加前台进程。 该退出代码是所有其他后续退出代码的例外。 这不一定意味着发生了不好的事情。如果开发人员想要在容器完成其工作后自动停止其容器,则使用此退出代码。 Exit Code 1 程序错误,或者Dockerfile中引用不
阅读全文
摘要:容器技术的核心功能,就是通过约束和修改进程的动态表现,从而为其创造出一个“边界”。 对于 Docker 等大多数 Linux 容器来说,Cgroups 技术是用来制造约束的主要手段,而 Namespace 技术则是用来修改进程视图的主要方法。 当 Docker 创建一个容器时,它会创建新的六种 na
阅读全文