Docker 的初步認識

更新於 2024/12/15閱讀時間約 2 分鐘
章節
  1. 我為什麼要用 Docker?
  2. Docker 的初步認識。(本篇文章)
  3. Docker Hello World。
  4. Docker Services。
  5. Docker Swarm。
  6. Docker Stack。
Docker 的官方文件就列出下圖來說明 Docker 是什麼?
https://docs.docker.com/get-started/
我在第一次看到這張圖片的時候,冒出以下幾個問題:
  1. 什麼是 Hypervisor?它的作用什麼?
  2. 這圖片要傳達什麼意思?
接下來回答這幾個問題:
Q1:什麼是 Hypervisor?它的作用什麼?
就我的理解它是模擬軟體,每個作業系統安裝的時候,都會預期有某些硬體規格,比如 CPU 家族(x86, ARM),幾個硬碟(介面是什麼),鍵盤、滑鼠等等的硬體。Hypervisor 就是負責模擬出這些硬體環境,讓作業系統可以正常安裝。所以才可以看到上圖,一台 PC 其實可以安裝多個作業系統。

Q2:這圖片要傳達什麼意思?
可以看到右邊並沒有 Hypervisor,取而代之的是 Docker,另外看到右邊都不再有 Guest OS,這就是 Docker 一直強調的「Lightweight」。因為作業系統比較吃資源,Docker 跑自己的應用程式的時候不再需要作業系統,而是由 Docker 幫我們代勞,幫我們把應用程式跑起來。

其實要把自己應用程式用 Docker 跑起來,主要是牽涉到以下幾個步驟:
  1. 在 Linux 下安裝 Docker。
  2. 將自己的應用程式包成 Image。
  3. 將 Image 上傳到 Docker Hub。(其實也可以放到其它地方)
  4. 在 Linux 下 docker 指令將應用程式跑起來。
往後更新應用程式的時候,要重複做 2 ~ 4 的步驟。

結論
Docker 和虛擬機(VM) 的運作不同,VM 是必須要自己安裝作業系統,並且設定應用程式的環境(安裝應用程式相關的套件);但是 Docker 並不需要做這些,變成是在作業系統上安裝 Docker,再用 docker 相關指令將應用程式啟動。














    avatar-img
    0會員
    2內容數
    留言0
    查看全部
    avatar-img
    發表第一個留言支持創作者!
    弓箭手的沙龍 的其他內容
    我在開發的時候有碰到部屬伺服器上的困難,我用 Docker 來解決我的困境,文章會分為以下幾個章節: 我為什麼要用 Docker?(這篇文章) Docker 的初步認識。 Docker Hello World。 Docker Services。 Docker Swarm。
    我在開發的時候有碰到部屬伺服器上的困難,我用 Docker 來解決我的困境,文章會分為以下幾個章節: 我為什麼要用 Docker?(這篇文章) Docker 的初步認識。 Docker Hello World。 Docker Services。 Docker Swarm。
    你可能也想看
    Google News 追蹤
    Thumbnail
    *合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
    Thumbnail
    在現代 DevOps 和雲端部署中,Docker 和 Kubernetes 常用於簡化應用程式的部署與管理,尤其在 數據合作(Data Collaboration) 的場景中。以下是兩者的基本比較以及在廣告商和出版商數據合作中的應用範例。 ▋Docker:容器化平台 Docker 是一個
    Thumbnail
    本文介紹了 Docker 的基礎概念,以及在軟體工程環境中的運用。藉由 Docker 的容器化技術和映像檔技術,能夠實現開發和生產環境的一致性,並且支持負載平衡和無縫更新。此外,也提到了 Kubernetes 和 Docker Swarm 這兩個重要工具的用途和適用對象。
    Thumbnail
    本文將介紹Gitlab與GitHub的差異,以及在本地環境部署Gitlab的流程與實作。文章內容包括版本管理系統的選擇,Gitlab的基本功能,以及使用Docker進行部署的詳細步驟。
    Thumbnail
    在現代科技推動下,企業的數位轉型越來越成為不可忽視的趨勢。Docker,作為一個容器化技術的先驅,正深刻地改變著職場的工作方式和應用程式開發流程。本文將探討 Docker 在職場的應用,尤其是如何提升效能、簡化部署,以及它對現代企業的影響。
    將使用者加入Docker群組 sudo groupadd docker sudo usermod -aG docker $USER 設定開機自動啟動Docker服務 sudo systemctl enable docker sudo systemctl start docker 試跑
    Thumbnail
    教大家讓 vscode 連上遠端電腦中的 docker 環境之中,步驟詳細且附圖
    Thumbnail
    *合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
    Thumbnail
    在現代 DevOps 和雲端部署中,Docker 和 Kubernetes 常用於簡化應用程式的部署與管理,尤其在 數據合作(Data Collaboration) 的場景中。以下是兩者的基本比較以及在廣告商和出版商數據合作中的應用範例。 ▋Docker:容器化平台 Docker 是一個
    Thumbnail
    本文介紹了 Docker 的基礎概念,以及在軟體工程環境中的運用。藉由 Docker 的容器化技術和映像檔技術,能夠實現開發和生產環境的一致性,並且支持負載平衡和無縫更新。此外,也提到了 Kubernetes 和 Docker Swarm 這兩個重要工具的用途和適用對象。
    Thumbnail
    本文將介紹Gitlab與GitHub的差異,以及在本地環境部署Gitlab的流程與實作。文章內容包括版本管理系統的選擇,Gitlab的基本功能,以及使用Docker進行部署的詳細步驟。
    Thumbnail
    在現代科技推動下,企業的數位轉型越來越成為不可忽視的趨勢。Docker,作為一個容器化技術的先驅,正深刻地改變著職場的工作方式和應用程式開發流程。本文將探討 Docker 在職場的應用,尤其是如何提升效能、簡化部署,以及它對現代企業的影響。
    將使用者加入Docker群組 sudo groupadd docker sudo usermod -aG docker $USER 設定開機自動啟動Docker服務 sudo systemctl enable docker sudo systemctl start docker 試跑
    Thumbnail
    教大家讓 vscode 連上遠端電腦中的 docker 環境之中,步驟詳細且附圖