国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

容器、Docker、虛擬機的區別

璟琰乀 ? 來源:華為云社區 ? 作者:yixiaoer ? 2020-11-05 09:41 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

容器技術起源于Linux,是一種內核虛擬化技術,提供輕量級的虛擬化,以便隔離進程和資源。盡管容器技術已經出現很久,卻是隨著Docker的出現而變得廣為人知。Docker是第一個使容器能在不同機器之間移植的系統。它不僅簡化了打包應用的流程,也簡化了打包應用的庫和依賴,甚至整個操作系統的文件系統能被打包成一個簡單的可移植的包,這個包可以被用來在任何其他運行Docker的機器上使用。

容器和虛擬機具有相似的資源隔離和分配方式,容器虛擬化了操作系統而不是硬件,更加便攜和高效。

圖1 容器 vs 虛擬機

相比于使用虛擬機,容器有如下優點:

更高效的利用系統資源由于容器不需要進行硬件虛擬以及運行完整操作系統等額外開銷,容器對系統資源的利用率更高。無論是應用執行速度、內存損耗或者文件存儲速度,都要比傳統虛擬機技術更高效。因此,相比虛擬機技術,一個相同配置的主機,往往可以運行更多數量的應用。

更快速的啟動時間傳統的虛擬機技術啟動應用服務往往需要數分鐘,而Docker容器應用,由于直接運行于宿主內核,無需啟動完整的操作系統,因此可以做到秒級、甚至毫秒級的啟動時間,大大節約了開發、測試、部署的時間。

一致的運行環境開發過程中一個常見的問題是環境一致性問題。由于開發環境、測試環境、生產環境不一致,導致有些問題并未在開發過程中被發現。而Docker的鏡像提供了除內核外完整的運行時環境,確保了應用運行環境一致性。

更輕松的遷移由于Docker確保了執行環境的一致性,使得應用的遷移更加容易。Docker可以在很多平臺上運行,無論是物理機、虛擬機,其運行結果是一致的。因此可以很輕易的將在一個平臺上運行的應用,遷移到另一個平臺上,而不用擔心運行環境的變化導致應用無法正常運行的情況。

更輕松的維護和擴展Docker使用的分層存儲以及鏡像的技術,使得應用重復部分的復用更為容易,也使得應用的維護更新更加簡單,基于基礎鏡像進一步擴展鏡像也變得非常簡單。此外,Docker團隊同各個開源項目團隊一起維護了大批高質量的官方鏡像,既可以直接在生產環境使用,又可以作為基礎進一步定制,大大的降低了應用服務的鏡像制作成本。

Docker容器典型使用流程…

Docker容器有如下三個主要概念:

鏡像:Docker鏡像里包含了已打包的應用程序及其所依賴的環境。它包含應用程序可用的文件系統和其他元數據,如鏡像運行時的可執行文件路徑。

鏡像倉庫:Docker鏡像倉庫用于存放Docker鏡像,以及促進不同人和不同電腦之間共享這些鏡像。當編譯鏡像時,要么可以在編譯它的電腦上運行,要么可以先上傳鏡像到一個鏡像倉庫,然后下載到另外一臺電腦上并運行它。某些倉庫是公開的,允許所有人從中拉取鏡像,同時也有一些是私有的,僅部分人和機器可接入。

容器:Docker容器通常是一個Linux容器,它基于Docker鏡像被創建。一個運行中的容器是一個運行在Docker主機上的進程,但它和主機,以及所有運行在主機上的其他進程都是隔離的。這個進程也是資源受限的,意味著它只能訪問和使用分配給它的資源(CPU、內存等)。

典型的使用流程如圖2所示:

圖2 Docker容器典型使用流程

(1)首先開發者在開發環境機器上開發應用并制作鏡像。

Docker執行命令,構建鏡像并存儲在機器上。

(2)開發者發送上傳鏡像命令。

Docker收到命令后,將本地鏡像上傳到鏡像倉庫。

(3)開發者向生產環境機器發送運行鏡像命令。

生產環境機器收到命令后,Docker會從鏡像倉庫拉取鏡像到機器上,然后基于鏡像運行容器。

使用示例…

下面使用Docker將基于Nginx鏡像打包一個容器鏡像,并基于容器鏡像運行應用,然后推送到容器鏡像倉庫。

安裝DockerDocker幾乎支持在所有操作系統上安裝,用戶可以根據需要選擇要安裝的Docker版本。 在Linux操作系統下,可以使用如下命令快速安裝Docker。

curl -fsSL get.docker.com -o get-docker.shsh get-docker.sh

說明:

CentOS 8.0操作系統使用上述腳本安裝Docker會出現問題,建議使用如下命令安裝較低版本Docker。

wget -O /etc/yum.repos.d/docker-ce.repo https://repo.huaweicloud.com/docker-ce/linux/centos/docker-ce.repo sudosed -i ‘s+download.docker.com+repo.huaweicloud.com/docker-ce+’ /etc/yum.repos.d/docker-ce.repoyum install docker-ce-18.06.3.ce -ysystemctl restart docker

Docker打包鏡像…

Docker提供了一種便捷的描述應用打包的方式,叫做Dockerfile,如下所示:

# 使用官方提供的Nginx鏡像作為基礎鏡像FROM nginx:alpine# 執行一條命令修改Nginx鏡像index.html的內容RUN echo “hello world” 》 /usr/share/nginx/html/index.html# 允許外界訪問容器的80端口EXPOSE 80

執行docker build命令打包鏡像。

docker build -t hello 。

其中-t表示給鏡像加一個標簽,也就是給鏡像取名,這里鏡像名為hello。。 表示在當前目錄下執行該打包命令。

執行docker images命令查看鏡像,可以看到hello鏡像已經創建成功。您還可以看到一個Nginx鏡像,這個鏡像是從鏡像倉庫下載下來的,作為hello鏡像的基礎鏡像使用。

# docker imagesREPOSITORY TAG IMAGE ID CREATED SIZEhello latest d120ec16dcea 17 minutes ago 158MBnginx alpine eeb27ee6b893 2 months ago 148MB

本地運行容器鏡像…

有了鏡像后,您可以在本地執行docker run命令運行容器鏡像。

# docker run -p 8080:80 hello

docker run命令會啟動一個容器,命令中-p是將本地機器的8080端口映射到容器的80端口,即本地機器的8080端口的流量會映射到容器的80端口,當您在本地機器訪問 http://127.0.0.1:8080時,就會訪問到容器中,此時瀏覽器中返回的內容應該就是“hello world”。

把鏡像推送到鏡像倉庫華為云提供了容器鏡像服務SWR,您也可以將鏡像上傳到SWR,下面我們以華為云為例,演示如何將鏡像推送到SWR。

首先登錄SWR控制臺,在左側選擇“我的鏡像”,然后單擊右側“客戶端上傳鏡像”,在彈出的窗口中單擊“生成臨時登錄指令”,然后復制該指令在本地機器上執行,登錄到SWR鏡像倉庫。

上傳鏡像前需要給鏡像取一個完整的名稱,如下所示:

# docker tag hello swr.cn-east-3.myhuaweicloud.com/container/hello:v1

詳細解析如下:swr.cn-east-3.myhuaweicloud.com是倉庫地址,每個華為云區域的地址不同。

container是組織名,組織一般在SWR中創建,如果沒有創建則首次上傳的時候會自動創建,組織名在單個區域內全局唯一,需要選擇合適的組織名稱。

v1則是hello鏡像分配的版本號。

然后執行docker push命令就可以將鏡像上傳到SWR。

# docker push swr.cn-east-3.myhuaweicloud.com/container/hello:v1

當需要使用該鏡像時,使用docker pull命令拉取(下載)該命令即可。

# docker pull swr.cn-east-3.myhuaweicloud.com/container/hello:v1

-END-

本文摘自華為云社區

作者 | yixiaoer

責任編輯:haq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • Linux
    +關注

    關注

    88

    文章

    11758

    瀏覽量

    219005
  • 服務器
    +關注

    關注

    14

    文章

    10251

    瀏覽量

    91478
  • 虛擬機
    +關注

    關注

    1

    文章

    972

    瀏覽量

    30463
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    Docker容器網絡模式全解析

    容器網絡是Docker使用中最容易出問題的部分。容器之間怎么通信、容器怎么訪問外網、外部怎么訪問容器內的服務——這三個問題搞不清楚,排查網絡
    的頭像 發表于 02-26 16:39 ?229次閱讀

    虛擬機數據恢復—虛擬機vmdk文件被刪除的數據恢復案例

    本次數據恢復涉及一臺R710系列服務器和一臺MD3200系列存儲,上層是ESXI5.5版本的虛擬機虛擬文件。因客戶機房非正常斷電,虛擬機無法啟動。機房管理員檢查發現虛擬機配置文件丟失
    的頭像 發表于 02-10 17:05 ?181次閱讀
    <b class='flag-5'>虛擬機</b>數據恢復—<b class='flag-5'>虛擬機</b>vmdk文件被刪除的數據恢復案例

    虛擬機數據恢復—異常斷電致ESXI存儲失聯?這份實戰數據恢復案例請收好

    服務器存儲數據恢復環境: 一臺服務器上部署esxi虛擬化平臺。上層采用通過FreeNAS構建的iSCSI方式FCSAN功能,FreeNAS層采用UFS2文件系統。 esxi虛擬化系統有3臺虛擬機
    的頭像 發表于 11-11 14:11 ?259次閱讀

    蜂鳥e203在虛擬機unbuntu上面驗證時報錯的可能原因及解決措施

    內容:蜂鳥e203在虛擬機unbuntu上面驗證時報錯的可能原因 現象: 解決措施: 蜂鳥e203在虛擬機unbuntu上面驗證時不要重復輸入命令: make install make compile SIM=iverilog 只需輸入一遍
    發表于 10-24 08:27

    搭建自己的ubuntu系統之創建ubuntu虛擬機

    打開VMware軟件,點擊創建新的虛擬機。進入以下界面:選擇自定義,點擊“下一步”。選擇對應VMware版本的兼容性,版本可在幫助-&gt;關于VMware Workstation中
    發表于 09-25 09:39

    Docker容器安全攻防實戰案例

    在云原生時代,Docker已成為現代應用部署的基石。然而,容器化帶來便利的同時,也引入了新的安全挑戰。作為一名在生產環境中管理過數千個容器的運維工程師,我將通過真實的攻防實戰案例,帶你深入了解
    的頭像 發表于 08-05 09:52 ?1319次閱讀

    創龍 瑞芯微 RK3562 國產 2GHz 四核A53 工業開發板—Docker容器部署方法說明

    Docker是一個開源的應用容器引擎,讓開發者可打包他們的應用以及依賴包至一個可移植的鏡像中,然后發布至任何流行的Linux或Windows機器上,亦可實現虛擬化。容器是完全使用沙箱機
    的頭像 發表于 07-03 11:00 ?564次閱讀
    創龍 瑞芯微 RK3562 國產 2GHz 四核A53 工業開發板—<b class='flag-5'>Docker</b><b class='flag-5'>容器</b>部署方法說明

    干貨分享 | RK3588 Ubuntu系統Docker容器使用指南

    Docker實戰流程。1.Docker簡介Docker本質是輕量級虛擬化技術,通過容器化機制打包應用及其依賴環境。與傳統
    的頭像 發表于 06-27 12:01 ?3847次閱讀
    干貨分享 | RK3588 Ubuntu系統<b class='flag-5'>Docker</b><b class='flag-5'>容器</b>使用指南

    中軟國際鴻云虛擬機安裝指南

    鴻蒙電腦作為新一代分布式計算平臺,憑借其卓越的多端協同能力和智能化特性,為高效辦公提供了新選擇。針對專業軟件兼容性這一核心痛點,中軟國際的鴻云虛擬機解決方案提供了務實的技術路徑。作為專為鴻蒙生態打造
    的頭像 發表于 06-23 16:31 ?4195次閱讀

    TECS OpenStack資源池虛擬機網絡二層地址無法互通的問題處理

    某運營商TECS OpenStack使用主機overlay SDN方案組網,運維人員在創建虛擬機測試虛擬機網絡狀態時發現問題:在其中一臺主機上創建兩臺同網段虛擬機虛擬機之間二層地址無
    的頭像 發表于 06-12 09:28 ?878次閱讀
    TECS OpenStack資源池<b class='flag-5'>虛擬機</b>網絡二層地址無法互通的問題處理

    Vsan數據恢復——Vsan分布式文件系統上虛擬機不可用的數據恢復

    一臺采用VsSAN分布式文件系統的存儲設備由于未知原因關機重啟。管理員發現上層的虛擬機不可用,存儲內的數據丟失。
    的頭像 發表于 05-15 17:42 ?571次閱讀
    Vsan數據恢復——Vsan分布式文件系統上<b class='flag-5'>虛擬機</b>不可用的數據恢復

    Linux內核編譯失敗?移動硬盤和虛擬機的那些事兒

    Linux開發中,編譯內核是一項常見任務,但不少開發者在移動硬盤或虛擬機環境下嘗試時會遭遇失敗。本文將簡要探討這些問題的成因,并介紹一些虛擬機使用技巧,幫助大家更好地應對相關問題。在移動硬盤里編譯
    的頭像 發表于 04-11 11:36 ?991次閱讀
    Linux內核編譯失敗?移動硬盤和<b class='flag-5'>虛擬機</b>的那些事兒

    【技術案例】Android in Docker

    Docker介紹Docker是一個開源的容器化平臺,用于打包、分發和運行應用程序。它通過將應用及其所有依賴打包到獨立的容器中,確保應用在不同環境中一致運行。
    的頭像 發表于 04-02 16:33 ?1755次閱讀
    【技術案例】Android in <b class='flag-5'>Docker</b>

    【貝啟科技BQ3568HM開源鴻蒙開發板深度試用報告】3-ubuntu18.04虛擬機開發環境搭建

    虛擬機選擇 為了方便開發,我選擇了采用虛擬機安裝Ubuntu系統。 我的虛擬機版本如下: Ubuntu18.04系統安裝 根據官方建議,我選擇了這個版本的系統。 話不多說,直接安裝: 快捷鍵
    發表于 03-18 11:28

    使用Windows中的Docker容器運行DL Streamer出現報錯怎么解決?

    使用 Windows* 中的 Docker 容器運行 DL Streamer。 遇到錯誤: gi.repository.GLib.GError: gst_parse_error: 無元素 “vaapih264enc” (1)
    發表于 03-05 07:04