首页 > 其他分享 >【Docker系列】Section 1: Docker and Container Fundamentals①

【Docker系列】Section 1: Docker and Container Fundamentals①

时间:2024-04-22 14:22:52浏览次数:33  
标签:容器 Container Fundamentals 应用程序 如何 集群 使用 Docker

本篇是根据《Kubernetes and Docker –An Enterprise Guide》整理出来的,原著作者:Scott Surovich | Marc Boorshtein,大家可以关注一下。

Who this book is for❓
我们创建这本书是为了帮助 DevOps 人员团队扩展他们的技能,超越 Kubernetes 的基础知识。它是根据我们在多个企业环境中使用集群的多年经验创建的。
What this book covers❓
`第1章`,理解Docker和容器的基本要素,可以帮助您了解Docker和库伯内特为开发人员解决的问题。您将介绍Docker的不同方面,包括Docker守护进程、数据、安装和使用Docker CLI。
`第2章`,使用Docker Data,讨论了容器需要如何存储数据,有些用例只需要短暂磁盘,而另一些则需要持久磁盘。在本章中,您将了解有关持久性数据,以及如何将Docker与卷、绑定装载和tmpf一起使用来存储数据。
`第3章`,理解Docker网络,介绍你在Docker中的网络。它将包括创建不同的网络类型、添加和删除容器网络,以及公开容器服务。

`第4章`,使用KinD部署库伯内特,展示了KinD是一个强大的工具,允许您创建一个从单个节点集群到一个完整的多节点集群。本章超越了基本的KinD集群,解释了如何使用运行HAproxy的负载平衡器来实现负载平衡工作节点。在本章结束时,您将了解KinD是如何工作的,以及如何创建一个自定义的多节点集群,这将用于以下章节中的练习。
`第5章`,库伯内训练营,涵盖了集群包含的大部分对象,是需要复习库伯特,还是对平台的更新。它通过描述每个对象在集群中的作用及其功能来解释这些对象。这一章是为了成为一个复习,或一个对物体的“口袋指南”——它不包含每个物体的详尽的细节,因为这将需要第二本书。
`第6章`,服务、负载平衡和外部dns,教您如何使用服务公开Kubernetes部署。通过示例解释每种服务类型,您将学习如何使用第7层和第4层负载平衡器来公开它们。在本章中,您将超越一个简单的入口控制器的基本知识,即安装MetalLB,以提供对服务的第4层访问。您还将安装一个名为外部dns的培养箱项目,以为MetalLB公开的服务提供动态名称解析。
`第7章`,将身份验证集成到集群中,考虑了在构建集群后用户将如何访问集群的问题。在本章中,我们将详细介绍OpenID连接是如何工作的,以及为什么您应该使用它来访问集群。我们还将介绍一些应该避免的反模式,以及为什么应该避免它们。
`第8章`,“RBAC策略和审计”演示了一旦用户能够访问集群,您需要如何能够限制他们的访问。无论您是为用户提供整个集群还是仅仅是一个名称空间,您都需要知道库伯内特斯如何通过其基于角色的访问控制系统或RBAC授权访问。在本章中,我们将详细介绍如何设计RBAC策略、如何调试它们,以及针对多租赁的不同策略。
`第9章`,保护库伯内特仪表板的安全,来看看库伯内特仪表板,这通常是用户在集群启动和运行后试图启动的第一件事。关于安全(或缺乏安全)有相当多的神话。您的集群也将由其他web应用程序组成,如网络仪表板、日志记录系统和监控仪表板。本章将介绍仪表盘是如何架构的,如何正确地保护它,以及如何不部署它的示例,并详细说明了具体原因。
`第10章`,创建Pod安全策略,处理运行Pod实例的节点的安全性。我们将讨论如何安全地设计容器,使它们更难被滥用,以及如何构建策略来约束您的容器访问它们不需要的资源。我们还将介绍代码安全策略API的弃用以及如何处理它。
`第11章`,使用开放策略代理扩展安全性,为您提供了部署开放策略代理和网关管理员所需的指导,以启用无法使用RBAC或RBAC安全策略实现的策略。我们将介绍如何部署网关守护程序,如何在Rego中编写策略,以及如何使用OPA内置的测试框架来测试您的策略。
`第12章`,使用Falco和EFK进行审计,讨论了库伯内特如何包括API访问的事件日志记录,但它没有能力记录可能在Pod中执行的事件。为了解决这一限制,我们将安装一个捐赠给CNCF的名为Falco的项目。您还将学习如何使用Falco EFK EFK和EFK堆栈(弹性搜索、荧光D和Kibana)来显示由Falco捕获的数据。通过在Kibana中查找事件并创建一个包含重要事件的自定义仪表板,您将获得实践体验。
`第13章`,备份工作负载,教您如何使用Velero创建针对灾难恢复的备份集群工作负载或集群迁移。您将亲自动手,创建一个示例工作负载的备份,并将备份恢复到一个全新的集群中,以模拟集群迁移。
`第14章`,配置一个平台,让您构建了一个使用GitLab、Tekton、ArgoCD和OpenUnison来自动化多租户集群的平台。我们将探讨如何构建管道,以及如何自动创建它们。我们将探讨用于驱动管道的对象是如何相互关联的,如何在系统之间建立关系,最后,如何创建一个能够实现管道自动化部署的自助服务工作流。

在第一部分中,我们将回顾重要的Docker和容器的概念,以及Docker为开发人员提供的好处。在快速回顾了Docker之后,我们将继续讨论如何将持久性数据添加到容器中,以及如何使用Docker网络来将容器公开给外部世界。这些基本概念对于充分理解库库和理解容器如何运行集群至关重要。

本书的这一部分包括以下章节:
第1章,理解码头和容器要点--

标签:容器,Container,Fundamentals,应用程序,如何,集群,使用,Docker
From: https://www.cnblogs.com/o-O-oO/p/18150486

相关文章

  • calico配置报错 kubelet.go:2855] "Container runtime network not ready"
    前言配置calico网络插件时,kubectlgetnode报错:NoReadykubectldescribenodenodeName:nodeRoles:<none>Labels:beta.kubernetes.io/arch=amd64beta.kubernetes.io/os=linuxkub......
  • OpenEuler22.03 SP3离线安装Docker
    下载Docker离线安装包下载地址:https://download.docker.com/linux/static/stable/下面以安装docker-23.0.5.tgz为例。安装Docker解压docker-23.0.5.tgz[root@mccp~]#tar-zxvfdocker-23.0.5.tgzdocker/docker/docker-proxydocker/containerd-shim-runc-v2docker/ctrdocker......
  • 使用 Docker 部署 FRP
    服务端编写配置文件vim~/.config/frp/frps.tomlbindPort=7000#WebDashboard[webServer]addr="0.0.0.0"port=7500user="xxx"password="xxx"启动Docker容器dockerrun-d--restartalways--networkhost--namefrps-v~/.con......
  • docker安装rabbitmq
    拉取镜像dockerpullrabbitmq:3.12.12运行容器cd/usr/local/dockerdockerrun-d--namerabbitmq3.12.12-p5672:5672-p15672:15672-v`pwd`/data:/var/lib/rabbitmq--hostnamemyRabbit-eRABBITMQ_DEFAULT_VHOST=my_vhost-eRABBITMQ_DEFAULT_USER=admin-e......
  • docker Java 应用堆内存配置
    引言本文主要是讲解InitialRAMPercentage、MinRAMPercentage,MaxRAMPercentage三个JVM参数之间的区别。参数由Java8update191引入,主要是用于配置运行在物理机或者容器中的Java应用堆内存大小。InitialRAMPercentage-XX:InitialRAMPercentage用于配置堆的初始化......
  • unix /var/run/docker.sock: connect: permission denied
    由于安全整改,root被ssh_config禁用,故使用普通用户执行脚本,执行脚本过程中,使用普通用户运行docker命令时发现权限不够,报错如下GotpermissiondeniedwhiletryingtoconnecttotheDockerdaemonsocketatunix:///var/run/docker.sock:Gethttp://%2Fvar%2Frun%2Fdocker.soc......
  • debian11安装docker
    在Debian11上安装Docker,你可以按照以下步骤操作:更新软件包索引:sudoaptupdate安装必要的软件包以允许apt通过HTTPS使用仓库:sudoaptinstallca-certificatescurlgnupglsb-release添加Docker的官方GPG密钥:curl-fsSLhttps://download.doc......
  • docker安装mysql
    下载最新的官方镜像dockerpullmysql:latest启动mysqldockerrun-d-p3306:3306\--privileged=true\-v/app/mysql/log:/var/log/mysql\-v/app/mysql/data:/var/lib/mysql\-v/app/mysql/conf:/etc/mysql/conf.d\......
  • docker harbor-入门指南
    一、Harbor介绍1.介绍Harbor是一个开源注册表,它使用策略和基于角色的访问控制来保护工件,确保图像被扫描且没有漏洞,并将图像签名为受信任。Harbor是CNCF毕业项目,可提供合规性、性能和互操作性,帮助您跨云原生计算平台(如Kubernetes和Docker)一致、安全地管理工件。2.官......
  • docker内安装软件
     安装nginx拉取镜像拉取镜像dockerpullnginx创建挂载目录mkdir-p/home/nginx/confmkdir-p/home/nginx/logmkdir-p/home/nginx/html生成容器dockerrun--namenginx-p9001:80-dnginx将容器nginx.conf文件复制到宿主机dockercpnginx:/etc/nginx/nginx.co......