AlexeyKuzko/devops-cloud-engineering-labs

GitHub: AlexeyKuzko/devops-cloud-engineering-labs

汇总了 11 个 DevOps、云基础设施和安全教学实验项目的静态快照存档,用于基于证据的技能展示与代码审查。

Stars: 0 | Forks: 0

# DevOps 与云工程实验室 这是一个精选的 11 个教育性 DevOps、云、基础设施、数据库和安全项目的单次提交快照存档。项目树被聚合在一个单一的快照提交中,以便同时审查它们的源码和历史目录名;这 11 个仓库的原始历史记录不包含在内。 该存档专为基于证据的审查而设计。请从下方选定的实现开始查看,然后使用完整的映射表来了解出处以及完成度较低的课程作业。 ## 功能特性 - 使用 Docker、Docker Compose、强化镜像和健康检查进行容器交付。 - 使用 Terraform、Ansible、Helm 和 Kubernetes 清单进行基础设施即代码管理。 - 针对 GitHub Actions 和 GitLab CI 的 CI/CD 示例,包括扫描和部署阶段。 - 通过 Prometheus、Grafana、数据库迁移、备份和复制提供的运维证据。 - 使用 Suricata IDS/IPS、分段 Docker 网络和故意暴露的漏洞服务的安全实验室。 - 涵盖 Go、Django、React、Angular、Java、PostgreSQL、MySQL 和 MongoDB 的应用程序交付示例。 ## 存档架构 ``` devops-cloud-engineering-labs/ ├── README.md # recruiter-first guide and evidence map ├── PROJECT_INDEX.md # snapshot-to-directory index ├── SECURITY.md # mandatory isolation and destructive-action warnings ├── NOTICE.md # per-snapshot provenance and license status └── projects/ # 11 preserved project snapshots ``` `projects/` 下的每个目录仍然是一个独立的历史快照。这里没有共享的 runtime、依赖关系图、部署目标或根编排层。 ## 决策与权衡 - 保留历史目录名和原始源码内容,以确保证据可审计。 - 两个 Sausage Store 目录被刻意保留。它们在内容上有大量重叠,但捕获了不同课程阶段的快照;两者均不作为独立的全新构建实现来呈现。 - 保留 `go-devops-engineer-magistr-lesson2` 是为了存档的完整性,已明确标记为未完成,并将其排除在选定证据之外。 - IFMO 数据库练习的描述基于其实现:一个 MySQL 主节点和一个使用 binary-log replication 的只读副本,而不是三节点组复制集群。 - 不安全的资源字面量和明文实验室凭证被替换为文档地址、`example.invalid` 名称以及显式的 `CHANGE_ME_` 或 `REPLACE_WITH_` 占位符。这优先考虑了安全发布,而非直接复制粘贴进行部署。 ## 验证事实 此聚合仓库没有根 CI,并且未引入根 `.github/workflows` 目录。嵌套的 GitHub Actions 和 GitLab CI 文件作为休眠的快照证据保留:它们在聚合仓库的根目录下不活跃,且其历史部署假设未针对实时服务进行重新认证。 此策展工作在本地通过 Gitleaks 对工作区和完整存档历史进行检查、不执行代码的 shell 语法解析、带有模板例外的 JSON/YAML 解析(并已记录在案)、Markdown 链接检查、占位符和 endpoint 验证、`git diff --check` 以及严格的 Git 对象验证。这些检查确立了仓库的完整性和静态语法的正确性;它们并不能证明历史的云部署、第三方服务、容器镜像或依赖版本仍然可以正常运行。 ## 选定证据 1. [Sausage Store 学期 2](projects/cloud-services-engineer-sausage-store-project-sem2) — 用于多服务应用程序的 Terraform、Checkov/Terratest、多阶段交付定义和 Helm charts。 2. [Docker 项目学期 2](projects/cloud-services-engineer-docker-project-sem2) — 非 root 容器、只读文件系统、健康检查、资源控制、Trivy 和 Compose 网络。 3. [IFMO 分布式计算实验室](projects/IFMO_DistributedComputing_for_DevOps) — Ansible 管理的 WordPress、双节点 MySQL primary/replica 迁移、备份/恢复流程、Prometheus 和 Grafana。 4. [Suricata IDS/IPS Docker 实验室](projects/ITMO_Suricata-IPS-Docker-Lab) — 网络检查规则和必须仅在隔离的一次性环境中运行的漏洞服务练习。 5. [Kittygram 交付快照](projects/cloud-services-engineer-kittygram-final) — Django/React 交付、Compose、Terraform 模块和休眠的 GitHub Actions 定义。 6. [DBOps 项目](projects/cloud-services-engineer-dbops-project-main) — PostgreSQL schema 迁移、种子数据、容器化检查和捕获的成功结果。 ## 完整仓库映射表 | 快照 | 主要关注点 | 策展状态 | | --- | --- | --- | | [IFMO_DistributedComputing_for_DevOps](projects/IFMO_DistributedComputing_for_DevOps) | Ansible、WordPress、MySQL primary/replica、监控 | 选定证据;拓扑已更正 | | [ITMO_Suricata-IPS-Docker-Lab](projects/ITMO_Suricata-IPS-Docker-Lab) | Suricata IDS/IPS 和脆弱的 Docker 服务 | 选定证据;仅限隔离使用 | | [cloud-services-engineer-dbops-project-main](projects/cloud-services-engineer-dbops-project-main) | PostgreSQL 迁移和 DBOps | 选定证据 | | [cloud-services-engineer-docker-project-sem2](projects/cloud-services-engineer-docker-project-sem2) | 强化的全栈容器和扫描 | 选定证据 | | [cloud-services-engineer-kittygram-final](projects/cloud-services-engineer-kittygram-final) | Django/React 交付和 Terraform | 选定证据 | | [cloud-services-engineer-sausage-store-project-sem2](projects/cloud-services-engineer-sausage-store-project-sem2) | Terraform、CI/CD、Terratest 和 Helm | 选定证据;与后续快照有重叠 | | [go-devops-engineer-magistr-lesson1](projects/go-devops-engineer-magistr-lesson1) | Go/DevOps 课程课程 | 辅助课程作业 | | [go-devops-engineer-magistr-lesson2](projects/go-devops-engineer-magistr-lesson2) | 课程模板 | 未完成;排除在选定证据之外 | | [itmo-devops-sem1-project-template](projects/itmo-devops-sem1-project-template) | Go REST API 课程项目 | 辅助课程作业 | | [itmo_gitlablab](projects/itmo_gitlablab) | GitLab 服务器、runner 和流水线实验室 | 辅助课程作业;建议隔离使用 | | [sausage-store-3-semester-main](projects/sausage-store-3-semester-main) | 扩展的 Sausage Store 部署快照 | 辅助证据;与学期 2 快照有重叠 | ## 安全与限制 在运行任何内容之前,请阅读 [SECURITY.md](SECURITY.md)。特别是,切勿在公共主机上暴露 Suricata 实验室、其漏洞服务、GitLab 实验室或示例数据库服务。在执行之前,请审查脚本和基础设施计划:某些快照会发布端口、修改防火墙或主机状态、创建云资源,或包含破坏性的清理路径。 此存档是静态证据,而不是受支持的生产平台。在通过适当的 secret 管理器或本地环境替换之前,占位符值是故意不可部署的。我们不对引用的外部资源是否已被停用或凭证是否已轮换做出任何声明;请参阅 `SECURITY.md` 中的资源状态说明。 ## 运行与检查指南 克隆未来的仓库名称,并每次进入一个快照: ``` git clone https://github.com/AlexeyKuzko/devops-cloud-engineering-labs.git cd devops-cloud-engineering-labs/projects/PROJECT_DIRECTORY ``` 从该快照的 README 开始,检查其 Compose、Terraform、Ansible、Helm、workflow 和测试文件。 在您了解它们的作用范围并替换了所有显式占位符之前,请勿运行 `terraform apply`、`terraform destroy`、云 CLI、更改防火墙的脚本、漏洞服务栈或清理命令。 优先使用静态检查、语法检查和一次性本地虚拟机。 ## 出处、贡献与许可 这些是由 Alexey Kuzko 收集和策划的教育性快照。其中一些最初源于课程模板或包含上游工作;在此处保留它们并不意味着对每个文件拥有唯一作者身份。[NOTICE.md](NOTICE.md) 记录了所有 11 个目录的出处和许可状态,包括已知的 Sausage Store 重复项。 这里有意不设置统一的根许可证。嵌套的许可证仅在该快照及其版权声明所述的范围内适用。对于标记为 unknown/no license 的目录,不得假定其授予了重用权利。贡献应保留历史名称、出处、安全占位符和诚实的验证声明。
标签:API集成, Docker, EVTX分析, JS文件枚举, Metaprompt, 云计算, 可观测性, 子域名突变, 安全防御评估, 教学实验, 日志审计, 测试用例, 系统提示词, 自定义请求头, 规则引擎, 请求拦截