Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Docker 容器應用實戰
Rating: 4.5 out of 5(7 ratings)
110 students

Docker 容器應用實戰

通過課程學習 Docker 相關基礎指令及搭配各種語言 (PHP, Golang, Node.js) 進行開發部署維運
Created byBo-Yi Wu
Last updated 3/2022
Chinese (Traditional)

What you'll learn

  • Docker 基礎介紹
  • Docker 容器應用介紹
  • Docker 實戰部署

Course content

2 sections19 lectures4h 13m total length
  • 用 Docker 快速部署網站到 Heroku 雲平台18:59
  • 用 GitHub Actions 部署 Go 語言服務 (全 Docker 部署)19:15
  • Docker 在 CI/CD 流程內使用 cache-from 機制提升編譯速度10:22
  • [Go 語言實戰] docker-compose 實現 rolling update14:22

    上一篇作者有提到『什麼是 graceful shutdown?』,本篇透過 docker-compose 方式來驗證 Go 語言的 graceful shutdown 是否可以正常運作。除了驗證之外,單機版 Docker 本身就可以設定 scale 容器數量,那這時候又該如何搭配 graceful shutdown 來實現 rolling update 呢?相信大家對於 rolling update 並不陌生,現在的 Kubernetes 已經有實現這個功能,用簡單的指令就可以達到此需求,但是對於沒有在用 k8s 架構的開發者,可能網站也不大,那該如何透過單機本的 docker 來實現呢?

  • 用 Traefik 搭配 Docker 快速架設 Go 語言服務20:14
  • Flutter 使用 Docker 搭配 Drone 自動測試4:54
  • Docker 推出官方 GitHub Actions 套件 vs Drone CI 上傳 Docker Image9:47

    去年 GitHub 推出 Actions,就有不少開發者相繼把 CI/CD 流程內會使用到的 Plugin 都丟到 Marktetplace,而在這 Docker 容器時代,肯定是需要用自動化上傳容器到 Docker Registry,而官方也在上週正式釋出第一版 GitHub Actions,雖然在 Marktet 尚有不少開發者已經有實現了此功能,但是官方既然推出了,就採用官方的套件會比較適合。底下我們來看看如何使用 Docker 推出的 GitHub Aciton 來自動化上傳 Docker Image。除了介紹如何使用 GitHub Action 上傳 Image 外,我也會拿 Drone 的 Docker Plugin 來進行比較。

  • 如何透過 GitHub Actions 上傳 Docker Image 到 AWS ECR14:31

    最近正打算使用 GitHub Actions 來串接 AWS 服務 (ECR + ECS),上網找了一堆 ECR 套件,發現就連 AWS 官方都只有實作 Login 進 ECR,後面編譯跟上傳動作就需要自己寫。覺得蠻神奇的是為什麼不把 Plugin 寫更完整些,讓使用者不用再執行 docker 指令,所以我直接把 Drone 官方套件直接改寫支援 GitHub Actions 服務,詳細的操作文件可以參考這邊

  • 透過 Docker BuildKit 降低編譯 Image 時間,加速 CI/CD 流程13:28

    之前就有看到 Docker 推出 BuildKit 功能,這次跟大家介紹什麼是 BuildKit。現在部署編譯流程肯定都會用到 Docker,不管測試及部署都盡量在 Docker 內實現,來做到環境隔離,但是要怎麼縮短 Docker 在編譯 Image 時間,這又是另外的議題,本篇跟大家介紹一個實驗性的功能就是 BuildKit,原始碼可以參考這邊,希望未來這實驗性的功能可以正式納入 Docker 官方,網路上其實可以找到很多方式來做 Docker Layer 的 Cache,我個人最常用的就是 --cache-from 機制,可以適用在任何 CI/CD 流程,詳細說明可以參考這篇『在 docker-in-docker 環境中使用 cache-from 提升編譯速度』,下面使用到的程式碼都可以直接參考此 Repository,我還是使用 Go 語言當作參考範例。

  • 用 docker-compose 優雅關閉服務15:08
  • 打造最小 Python Docker 容器9:24

Requirements

  • 基礎程式設計

Description

重要提醒:因此平台 Udemy 為境外公司,在 Udemy 的刷卡屬於境外刷卡,您的信用卡公司會另外向您收取大約 1.5% 的國外交易手續費。手續費根據各家信用卡公司規定有所不同,詳細數字需與您的發卡銀行確認。

課程介紹:

現在軟體工程師如果還不知道 Docker 就已經太落伍了,本課程著重在實戰上面的介紹。藉由實戰經驗來了解如何使用 Docker 容器技術,透過容器可以減少開發環境建置時間,除了開發環境,Docker 也可以協助快速建置雲端環境,您不用在主機上面從無到有建置 Node.js 或 PHP 等相關設定環境,大大減少維運或開發者建置時間,這些省下來的時間都可以拿來開發多少功能需求了。所以你還不會 Docker 嗎?現在各種求職平台或工作內容都會寫上 Docker 需求,雖然 Docker 容器技術不是必須,但是這都是加分條件,開發者會 Docker 真的會讓團隊戰力更加完整。現在就開始加入學習 Docker 實戰吧。

課程緣由:

在各種教學平台上已經有很多課程介紹 Docker 容器技術,很多 Docker 的基礎教學都非常完整,所以這門課程會著重在 Docker 實戰,藉由工作上會用到的 Docker 容器技術加以介紹,所以課程內容會相當廣泛,介紹各種不同的工具及平台來協助團隊在部署或架構面上更完整。像是底下一系列相關應用及部署技巧

  1. 用 docker-compose 快速安裝 Gitea (Git Host 最將選擇)

  2. 用 Docker 直接快速部署到 Heroku 平台

  3. 用 docker-compose 實現 rolling update 機制

  4. 用 Docker 搭配 GitHub Action 部署 Go 語言服務

  5. 用 Docker 快速建置 PHP Laravel 開發環境

  6. 介紹 docker 使用 cache from 機制加快 docker image 編譯

  7. 使用 Traefik 搭配容器服務

  8. 透過 Docker 也可以將 Flutter 自動化測試

未來預計還會有像是 Kubernetes 部署及建制,或者是 Prometheus + Grafana 系統效能監控等主題。

Who this course is for:

  • 程式發開工程師
  • DevOps 維運工程師