随笔分类 - 黄嘉波-笔记汇总 / Docker:
摘要:要更改Docker的默认存储设置,通常指的是调整其存储驱动、存储位置或者相关存储配置。以下是针对不同目的的一般步骤: 一. 更改存储驱动(例如 devicemapper、overlay2、aufs 等) 检查当前存储驱动: docker info | grep Storage 这将显示当前Docke
阅读全文
摘要:在Docker中,清理批量后台停止的容器可以通过多种方式来实现。下面是一些常用的方法: 1. 使用docker container prune命令 Docker 1.13及更高版本提供了一个prune命令,用于删除所有停止的容器。这个命令非常有用,因为它可以快速地清理不再需要的容器,释放系统资源。
阅读全文
摘要:在Docker中,要停止所有正在运行的容器,可以使用以下命令: docker stop $(docker ps -aq) 这个命令的作用是: docker ps -aq:这条命令会列出所有容器(包括运行中和已停止的)的ID,-a 参数表示列出所有容器(不只是运行中的),-q 参数则表示仅显示ID,不
阅读全文
摘要:在Docker中,当一个容器退出(stopped or exited)后,它将不再处于运行状态,因此,通过 docker ps 命令默认情况下将无法看到已退出的容器。然而,这并不意味着容器内的数据会丢失。 容器退出时,其存储层中的数据通常是保留的,除非你明确地删除了容器。这意味着即便容器停止运行,只
阅读全文
摘要:构建Docker镜像时,应当遵循以下一系列最佳实践和原则,以确保镜像的高效、安全和易于维护: 镜像最小化: 选择尽可能小的基础镜像,如Alpine Linux,或者针对特定场景选择轻量级的基础镜像。 只安装应用程序运行所必需的软件包和服务,避免无关组件和文件。 在构建过程中清理临时文件和构建中间件,
阅读全文
摘要:在Docker中,所谓的“临时镜像”或“虚悬镜像”(dangling images)是指那些没有被任何容器引用的层,通常是在构建新镜像时遗留下来的中间层。要批量清理这类镜像,你可以使用 docker images 命令结合一些过滤条件来找到它们,然后用 docker rmi 命令删除。 以下是批量清
阅读全文
摘要:在Docker中,查看本地的镜像和容器分别可以通过以下两条命令来快速实现: 1. 查看本地镜像 要查看本地计算机上存储的所有Docker镜像,可以使用docker images命令。这个命令会列出所有可用的镜像,包括镜像的存储库名称、标签、镜像ID、创建时间和所占用的空间。 docker image
阅读全文
摘要:在Docker中,要实现容器在退出时自动删除,可以在运行容器时使用 --rm 标志。--rm 参数会指示Docker在容器退出后立即删除容器。以下是具体的命令示例: docker run --rm <image-name> <command> 例如,如果要运行一个基于Ubuntu镜像的容器,并在容器
阅读全文
摘要:在Docker中,要查看镜像支持的环境变量,有几种方法可以采用: 使用Dockerfile: 查看Docker镜像的环境变量最直接的方式是查看构建该镜像的Dockerfile。Dockerfile中的ENV指令用于设置环境变量,这些变量在构建镜像时会被创建并保存在镜像中。因此,通过检查Dockerf
阅读全文
摘要:在Docker中,清理后台停止的容器可以通过多种方式完成。以下是一些常用的方法: 1. 手动删除 你可以使用docker ps -a命令查看所有的容器,包括已停止的容器。找到你想要删除的容器的ID或名称。然后,使用docker rm <container_id_or_name>命令来删除它。例如:
阅读全文
摘要:在Docker中,当你使用docker exec -it <container_id_or_name> bash命令进入一个正在运行的容器的bash shell时,你实际上是启动了一个新的进程。要退出这个bash shell而不终止容器,你可以使用几种不同的方法。 1. 使用exit命令 在bash
阅读全文
摘要:Dockerfile中的常见指令及其用法如下: FROM FROM <image> 说明:定义构建镜像的基础镜像。 用法:指定一个现有镜像作为新建镜像的父镜像,所有后续操作都在这个基础上进行。 RUN RUN <command> (shell form) 或 RUN ["executable", "
阅读全文
摘要:Docker作为一种容器化技术,具备一定的安全保障机制,但同时也会面临一些潜在的安全挑战。理解Docker的安全性,我们可以从以下几个方面来看: 1. Docker的安全特性: 隔离性: Docker利用Linux内核的命名空间(Namespace)、控制组(Control Groups, cgro
阅读全文
摘要:在Docker中,容器可以从一种状态转换到另一种状态,以下是Docker容器可能出现的主要状态: created(已创建): 当您使用 docker create 命令创建一个容器但尚未启动它时,容器处于此状态。容器的文件系统结构和配置已经准备完毕,但是还没有开始运行任何进程。 restarting
阅读全文
摘要:Docker作为一种开源的应用容器引擎,主要用于解决应用软件开发、分发和部署过程中面临的环境一致性、可移植性和资源高效利用等问题。以下是一些Docker的主要用途: 标准化和隔离应用环境: Docker通过容器技术为每个应用程序及其依赖提供一个独立的、可移植的运行环境。每个容器就像一个小型的、独立的
阅读全文
摘要:在Docker中,与传统虚拟机(Virtual Machines, VMs)相比,Docker采用的是操作系统层面的轻量级虚拟化技术,主要体现在以下几个方面的不同: 架构和资源使用: 虚拟机:运行在hypervisor之上,每个虚拟机都包含一个完整的操作系统副本(内核+用户空间),占用较多的系统资源
阅读全文
摘要:在Docker的上下文中,特别是在Dockerfile构建和CI/CD流程中,“stage”和“step”这两个术语具有不同的含义: Stage(阶段): 在Dockerfile中,stage(也称为构建阶段或构建阶段目标)是一种构建策略,允许开发者将Docker镜像构建过程分割成多个逻辑部分或阶段
阅读全文
摘要:在Docker中,镜像由一系列不可变的层(layers)组成,每层代表一次对容器文件系统的修改。当构建镜像时,每次RUN命令通常都会生成一个新的层。这可能导致镜像包含大量的冗余数据,尤其是在多步骤构建过程中,其中某些层可能包含了相同的基础文件但只有微小改动。要减少这种冗余并压缩镜像层级,有几种方法可
阅读全文
摘要:在Docker中,docker commit 和基于 Dockerfile 构建镜像的过程和区别主要包括以下几个方面: 1. docker commit 过程与特点: 过程: 启动一个容器,通常基于某个基础镜像。 在容器内部执行各种操作,例如安装软件、修改配置文件等。 使用 docker commi
阅读全文
摘要:在Docker中,镜像(Images)保存在本地文件系统中,具体的保存位置取决于您使用的操作系统。以下是一些常见操作系统的Docker镜像保存位置: Linux: 默认情况下,Docker镜像保存在/var/lib/docker/目录下。 当您使用docker pull命令从Docker Hub或私
阅读全文