90DaysOfDevOps
English Version | Versión en Castellano | 中文版本 | 繁體中文版本| 日本語版 | Wersja Polska | Tiếng Việt | 한국어 Turkce Versiyonu
這個倉儲是我學習 DevOps 基礎知識時所寫的文件。我將會從 2022年01月01 日開始,
一直到 2022年03月31日為止,總共花費 90天的時間完成我的旅行。
寫下這份文件的原因是希望其他人也能從中獲益,當然也希望從中豐富文件中的資源。
我的目標是花費90天的時間,每天一個小時,學會13項與 DevOps 相關的基礎知識。
此份文件不會涵蓋所有的 DevOps 知識,但是會包含我認為整體上有利我學習和了解的部分
目錄
- [✔️] ♾️ 1 > 介紹
什麼是 DevOps? 為何我們需要它?
- [✔️] ♾️ 2 > DevOps 的責任
- [✔️] ♾️ 3 > DevOps 生命週期 - 從應用角度
- [✔️] ♾️ 4 > DevOps & Agile
- [✔️] ♾️ 5 > 規劃 > 編碼 > 編譯 > 測試 > 釋出 > 部署 > 維運 > 監控 >
- [✔️] ♾️ 6 > DevOps - 真實故事
學習一項程式語言
- [✔️] ⌨️ 7 > 概述: DevOps & 學習一項程式語言
- [✔️] ⌨️ 8 > 設置你的 DevOps 環境 & 使用 Go 寫 Hello World
- [✔️] ⌨️ 9 > 解釋 Hello World 程式碼
- [✔️] ⌨️ 10 > Go 的工作區 & 編譯 & 執行程式碼
- [✔️] ⌨️ 11 > 介紹變數, 常數 & 資料型態
- [✔️] ⌨️ 12 > 使用者輸入和指標
- [✔️] ⌨️ 13 > 寫一隻程式發送推特
學習 Linux 基礎
- [✔️] 🐧 14 > 概述: DevOps 和 Linux
- [✔️] 🐧 15 > DevOps 相關的 Linux 基本指令
- [✔️] 🐧 16 > 管理 Linux 系統, 檔案系統 & 儲存空間
- [✔️] 🐧 17 > 檔案編輯器 - nano vs vim
- [✔️] 🐧 18 > SSH & Web 伺服器(LAMP)
- [✔️] 🐧 19 > 使用 bash 做自動化
- [✔️] 🐧 20 > 設置開發環境 - 如何更美觀
瞭解網路
- [✔️] 🌐 21 > 概述: DevOps and 網路
- [✔️] 🌐 22 > 什麼是OSI的7層架構?
- [✔️] 🌐 23 > 網路通訊協定
- [✔️] 🌐 24 > 網路自動化方法
- [✔️] 🌐 25 > 透過 Python 實現網路自動化
- [✔️] 🌐 26 > 搭建自己的實驗環境
- [✔️] 🌐 27 > 手把手帶你如何用 Python 做網路設備自動化
選擇一個雲端供應商
- [✔️] ☁️ 28 > 概述: DevOps & The Cloud
- [✔️] ☁️ 29 > Microsoft Azure 基礎
- [✔️] ☁️ 30 > Microsoft Azure 安全模型
- [✔️] ☁️ 31 > Microsoft Azure 計算模型
- [✔️] ☁️ 32 > Microsoft Azure 儲存 & 資料庫模型
- [✔️] ☁️ 33 > Microsoft Azure 網路模型和 Azure 管理
- [✔️] ☁️ 34 > Microsoft Azure 實踐方案
如何高效的使用 Git
- [✔️] 📚 35 > 概述: Git - 版本控管
- [✔️] 📚 36 > 安裝和設定 Git
- [✔️] 📚 37 > Git 入門
- [✔️] 📚 38 > 暫存區(Staging)和變更區(Changing)
- [✔️] 📚 39 > Viewing, unstaging, discarding & restoring
- [✔️] 📚 40 > 開源平台介紹
- [✔️] 📚 41 > 開源工作流
容器(Containers)
- [✔️] 🏗️ 42 > 概述: 容器(Containers)
- [✔️] 🏗️ 43 > Docker 介紹和安裝
- [✔️] 🏗️ 44 > Docker 印象檔 & 體驗 Docker Desktop
- [✔️] 🏗️ 45 > 剖析 Docker 印象檔
- [✔️] 🏗️ 46 > Docker Compose
- [✔️] 🏗️ 47 > Docker 網路與安全
- [✔️] 🏗️ 48 > Docker 的替代方案
Kubernetes
- [✔️] ☸ 49 > 概述: Kubernetes
- [✔️] ☸ 50 > 選擇你的 Kubernetes 平台
- [✔️] ☸ 51 > 部署第一個 Kubernetes 叢集
- [✔️] ☸ 52 > 設置多節點 Kubernetes 叢集
- [✔️] ☸ 53 > Rancher 概述 - Hands On
- [✔️] ☸ 54 > 如何部署應用程式至 Kubernetes
- [✔️] ☸ 55 > State and Ingress in Kubernetes
學習基礎架構即程式碼(Infrastructure as Code)
- [✔️] 🤖 56 > 概述: 學習基礎架構即程式碼(IaC)
- [✔️] 🤖 57 > Terraform 簡介
- [✔️] 🤖 58 > HashiCorp Configuration Language 配置語言簡介 (HCL)
- [✔️] 🤖 59 > 使用 Terraform 在 VirtualBox 創建 VM & 變數
- [✔️] 🤖 60 > Docker Containers, Provisioners & Modules
- [✔️] 🤖 61 > Kubernetes & Multiple Environments
- [✔️] 🤖 62 > Testing, Tools & Alternatives
自動化組態管理工具
- [✔️] 📜 63 > The Big Picture: Configuration Management
- [✔️] 📜 64 > Ansible: Getting Started
- [✔️] 📜 65 > Ansible Playbooks
- [✔️] 📜 66 > Ansible Playbooks Continued...
- [✔️] 📜 67 > Using Roles & Deploying a Loadbalancer
- [✔️] 📜 68 > Tags, Variables, Inventory & Database Server config
- [✔️] 📜 69 > All other things Ansible - Automation Controller, AWX, Vault
創建 CI/CD Pipelines
- [✔️] 🔄 70 > 概述: CI/CD Pipelines
- [✔️] 🔄 71 > 什麼是 Jenkins?
- [✔️] 🔄 72 > Getting hands on with Jenkins
- [✔️] 🔄 73 > Building a Jenkins pipeline
- [✔️] 🔄 74 > Hello World - Jenkinsfile App Pipeline
- [✔️] 🔄 75 > GitHub Actions Overview
- [✔️] 🔄 76 > ArgoCD Overview
監控, 日誌管理和資料可視化
- [✔️] 📈 77 > 概述: Monitoring
- [✔️] 📈 78 > Hands-On Monitoring Tools
- [✔️] 📈 79 > 概述: 日誌管理系統
- [✔️] 📈 80 > ELK Stack
- [✔️] 📈 81 > Fluentd & FluentBit
- [✔️] 📈 82 > EFK Stack
- [✔️] 📈 83 > 資料視覺化 - Grafana
儲存並保護你的資料
- [✔️] 🗃️ 84 > 概述: Data Management
- [✔️] 🗃️ 85 > 認識資料庫系統
- [✔️] 🗃️ 86 > 備份所有平台
- [✔️] 🗃️ 87 > Hands-On Backup & Recovery
- [✔️] 🗃️ 88 > Application Focused Backups
- [✔️] 🗃️ 89 > 災難復原
- [✔️] 🗃️ 90 > Data & Application Mobility