《 Docker 進階與實戰 》 讀書筆記

前些天發現了一個巨牛的人工智能學習網站,通俗易懂,風趣幽默,忍不住分享一下給大家。點擊跳轉到教程。

以下內容全文出自書目:《 Docker 進階與實戰 》

1. Docker 定義:一個開源的容器引擎,可以方便地對容器進行管理,不同容器可以共享底層的只讀鏡像。

2. Docker 是一個典型的 C/S 架構的應用。

3.?Docker deamon 可以被理解成?Docker? Server ,也常常用?Docker? Engine 來描述它。

4. 容器以鏡像為基礎,同時又為鏡像提供了一個標準和隔離的執行環境。鏡像是這個運行環境的靜態體現。

5. Registry 是存放鏡像的倉庫,通常被部署在服務器或者云端。支持鏡像的分發和更新。

? ? 倉庫的名字通常由兩部分組成,中間以斜線分開,前是用戶名,后是鏡像名。如:tom/ubuntu 。

? ? Docker 公司提供的官方 Registry 叫?Docker Hub 。鑒權認證保證了 Registry 訪問的安全性。

? ? 若要將鏡像 push 到第三方 Registry , 那么鏡像名中必須包含該 Registry 地址。

? ? 其實 Registry 也是一個單獨的開源項目。任何人都可以下載后部署一個自己的 Registry 。

?

6.?Docker? 的安裝:

sudo ape-get install docker.io

7.?Docker? Container : 內核容器技術。自動構建時當前機器的配置不會影響鏡像的構建過程。

? ? Docker? 容器與主機共享操作系統內核。

8. 容器虛擬化是一種操作系統虛擬化,屬于輕量級的虛擬化。

9. Namespace : 命名空間 / 名字空間,主要作訪問隔離。將內核的全部資源作封裝,使得每個空間有一份獨立資源,不同進程在各自空間內對同一種資源的使用不會相互干擾。

10. Cgroup? 是 Control group 的簡稱,亦稱為控制組,主要作資源控制。用于限制和隔離一組進程對系統資源的使用。

11. 容器組成公式:

容器 = cgroup + namespace + rootfs + 容器引擎(用戶態工具)Cgroup : 資源控制Namespace : 訪問隔離rootfs :文件系統隔離容器引擎 :生命周期控制

12. $$ 表示當前進程。

13. IPC 是 Inter - Process Communication 的簡寫:進程間通信。

14. Mount Namespace 用于隔離文件系統掛載點,刪除方式:

ip netns delete new_ns 

15. host 的普通用戶進程在容器里可以是 0 號用戶,也就是 root 用戶。

16.?Docker? image 是用來啟動容器的只讀模板。

17. 導入鏡像有 2 個可用命令:

docker import / docker load 。 docker load? 一般只用于導入由 docker save 導出的鏡像。

18.生成鏡像方式:

docker commit :可增量的生成一個鏡像。docker build : 通過 dockerfile 文件生成鏡像。

19. 列出容器:

docker ps 

20. 列出鏡像:

docker images?

21. 查看容器和鏡像詳細信息:

docker inspect 

22. Docker images 包含數據必要的元數據。數據由一層層的 image layer 組成,元數據則是一些 JSON 文件。用來描述數據(image layer)之間的關系及容器的一些配置信息。

23.?Docker? 對鏡像進行了完整性校驗,其完整性的憑證是由鏡像倉庫提供的。

24. image ID 實際上只是最上層的 layer ID,所以?Docker? inspect 也適用于任何一層 layer 。

25. “ env ”? : 容器啟動時會作為容器的環境變量。“ Cmd ” : 容器啟動時的默認命令。

26.?Docker? image 可使用寫時復制,快并節省空間。

27. 若制作 image 時使用到了上些關鍵信息(賬號、密碼等),則需要在同層刪除,不然這些信息會一直存在于 image 中。

28. 若下載鏡像不帶標簽,會把 ubuntu 倉庫下官方(默認 tag )鏡像全部下載。

29. 沙盒:隔離的網絡運行環境,保存了容器網絡棧的配置,包括了對網絡接口、路由表和 DNS 配置的管理。

30. docker create 、 docker run 可帶參數:-v : 添加數據卷,并可多次指定來掛載多個數據卷。

? ? ? -v 會在容器的 /tmp/data 目錄下創建一個新的數據卷。

? ? ? 可用 docker Inspet 查看數據卷在主機中的位置。

? ? ? -v 也可將?Docker? daemon 所在主機上的文件或文件夾掛載到容器中。

? ? ? -v 參數的主機目錄必須使用絕對路徑,若指定路徑不存在,?Docker 會自動創建該目錄。

? ? ? ?使用數據卷容器存儲的數據不會輕易丟失,刪除容器、甚至是初始化該數據卷的 dbdata ,該數據卷也不會被刪除。

31. 在本機部署 Convoy 插件后可用 Convoy 創建一個卷: ( 見書?P103 )

sudo convoy create volume_name

刪除:

sudo convoy delete volume_name

備份:

sudo convoy backup create snaplvoll --dest vfs:///opt/convoy/

32. Linux 的命令 ulimit 可對一些資源起限制作用,包括:

core dump 文件的大小、進程數據段的大小、可創建文件的大小、常駐內存集的大小 、打開文件的數量、進程棧的大小、CPU 時間 、單個用戶最大線程數、進程最大虛擬內存

33. Docker 可設置容器的根文件系統為只讀模式。

34.?Dockerfile 由四部分組成:

基礎鏡像信息、維護者信息、鏡像操作指令、容器啟動命令

? ? ?其第一條有效信息必須是基礎鏡像信息: FROM 指令。用來指定要制作的鏡像繼承自哪個鏡像。

? ? ?可以寫多個? FROM 指令來構建復雜鏡像。? ? ?

EXPOSE : 暴露端口CMD :容器啟動時執行的命令。每個 Dockerfile 只能有一條 CMD 命令,寫了多條時只有最后一條會被執行。若用戶啟動容器時指定了運行命令,則會覆蓋 CMD 指定命令。VOLUME :創建一個可從本地主機或其它容器掛載的掛載點。常用來存放數據庫或需要永久保存的數據。ENV :指定一個環境變量。被后續 RUN 命令使用并在容器運行時保持。

35.?Docker 制作鏡像的順序:

1. 解析 Dockerfile,找到基礎鏡像。2. 以基礎鏡像為基礎,創建一個容器。3. 在容器中按順序執行 Dockerfile 中的命令。4. 若不是 RUN 命令,如 ENV 命令,記錄下來以便啟動時執行。5. 把屬性命令記錄在 Image 的屬性中。6. 所有命令執行完后,commit 該容器為新的鏡像。

36.?Docker run 命令中用 -p 實現端口映射。

? ? ? 80:8089? 表示將主機上的 80 端口映射到容器中的 8089 端口。(對外端口:容器內端口)

37.?Docker build 命令可跟參數 -f :指定 build 命令中的 “ dockerfile ”? 選項來設置所需的?Dockerfile 。

38. docker-compose-yml 文件中:

1. “ ports?” 對應 docker run 中的 -p 參數。2. “ volumes ” 對應 -v 選項。3. “ links ” 對應 “ --links ” 選項。

39.搭建 Jenkins 環境有 2 種方式:

? ? ?1) 直接在主機中配置 Jenkins 環境 。

? ? ?2) 使用??Docker 鏡像配置 Jenkins 環境:

1. 下載 Jenkins 鏡像:  docker pull jenkins2. 啟動 Jenkins 容器: docker run -d -p 49001:8080 -t Jenkins-d : 后臺運行; -p : 端口映射; -t :給容器命名。

?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/447859.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/447859.shtml
英文地址,請注明出處:http://en.pswp.cn/news/447859.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

農村女人與城市女人的差別

1、農村女孩20歲結婚當媽很普遍,城市女孩三十多歲做剩女很普遍。 2、農村女孩對男方主要談彩禮和家庭條件;城市女孩對男方主要談房子和車子。 3、農村女人婚后不管經濟條件如何立馬生孩子,且基本上是兩胎以上;城市女人婚后得看條件計劃生孩子&…

【轉】R語言函數總結

原博;R語言與數據挖掘:公式;數據;方法R語言特征 對大小寫敏感通常,數字,字母,. 和 _都是允許的(在一些國家還包括重音字母)。不過,一個命名必須以 . 或者字母開頭,并且如…

《工作前5年,決定你一生的財富》三公子TXT,PDF,epub,mobi,azw3,kindle電子書下載

前些天發現了一個巨牛的人工智能學習網站,通俗易懂,風趣幽默,忍不住分享一下給大家。點擊跳轉到教程。 去年收到編輯出書的邀約,想讓我把這些年的理財心得做個整理,跟學習理財的朋友一起分享。其實,收到邀…

潛藏在人體體內的12種毒素

人的身體內有12大毒素為細菌的增殖和侵襲鋪好了道路。百病不生,就得清除身體內的12毒素。身體內有哪些毒素以及百病不生的解決方法: 體內毒素1.壞膽固醇 壞膽固醇主要表現為:初期沒有自覺癥狀,出現黃色瘤(淡黃色的脂肪腫塊)時…

const型數據小結

以下面Time類為例&#xff1b; #include<iostream> using namespace std; class Time { public:Time(int,int,int);void fun();int hour; int minute; int sec; }; Time::Time(int h,int m,int s) { hourh; minutem; secs; }; 形 式 含 義 Tim…

《趨勢的力量》-- 觀念決定了個人發展的戰略路線(大學生選擇專業、就業、考研與否的建議)

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 最近幾天看了好幾本書&#xff0c;其中這一本個人覺得很有啟發意義。于是記錄一二。 主體大綱&#xff1a; -------------------------…

廣州交警發布科目三電子路考操作要點

眼看著駕考科目三正式實施新考法的日子就要來了&#xff0c;不少在4月15日之后考試的學員開始著急了&#xff0c;這科目三的電子考到底考什么&#xff1f;不僅學員說不清楚&#xff0c;許多駕校教練也說不清楚&#xff0c;他們只能根據經驗猜想個大概。現在好了&#xff0c;官方…

中間件 - 初識

中間件 - 初識 ? 在Java項目實際開發中&#xff0c;我們所使用的ActiveMQ、RibbitMQ、Kafka、Tomcat、WebLogic&#xff0c;這些都可以統稱為中間件。 ? 我們初次去了解&#xff0c;什么是中間件? 一、中間件簡介 ? 什么是中間件&#xff1f; ? 由于業務、機構和技術是不斷…

VUE 解決:Property or method “deleteFun“ is not defined on the instance but referenced during render.

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 1. 一個點擊事件報錯&#xff1a; Property or method "deleteFun" is not defined on the instance but referenced during…

廣州交警發布路考秘籍 科目三扣分點近80項

科目三扣分點近80項 設定13種不合格情形 電子路考16日將正式全面實行&#xff0c;昨日&#xff0c;廣州市交警部門發布《科目三路考系統操作指南和評判標準》。據不完全統計&#xff0c;人工評判加上計算機評判&#xff0c;扣分點多達近80項&#xff0c;還設定了13種情形一律不…

js中動態引入css樣式文件

function loadStyles(url) {var link document.createElement("link");link.rel "stylesheet";link.type "text/css";link.href url;var head document.getElementsByTagName("head")[0];head.appendChild(link); } 使用&#xf…

java 字符串拆分成單個字符放到 list 集合

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 解決方法&#xff1a; 例如把“我是誰”拆開放到list中 public static void main(String args[]) {String verify"我是誰";…

修改滾動條的樣式

<style>.innerbox{overflow-y: auto;background-color: #f8f8f8;height: 200px;padding: 10px;}.innerbox::-webkit-scrollbar {/*滾動條整體樣式*/width: 4px; /*高寬分別對應橫豎滾動條的尺寸*/height: 4px;scrollbar-arrow-color:red;}.innerbox::-webkit-scrollb…

2014年廣州科目三道路駕駛技能考試/廣汕路科目三路考系統操作和評判指南

一 上車準備 上車準備操作要點&#xff1a; 繞車一周&#xff0c;觀察車輛外觀和周圍環境&#xff0c;確認安全。 考生繞車一周&#xff0c;檢查輪胎氣壓、輪胎磨損情況、輪胎螺栓有無松動&#xff0c;檢查有無漏水、漏油等情況&#xff0c;車輛外觀有無凹凸等碰撞情況&…

滾動條插件nicescroll的使用

https://www.hangge.com/blog/cache/detail_1931.html 使用&#xff1a; 需要引入jQuery插件和 jquery.nicescroll.js插件 修改滾動條&#xff1a; $("#thecondMenu_container").niceScroll({   cursorcolor: "#b3b3b3",   background: "#eee&quo…

Bootstrap 中: data-toggle 與 data-target 的作用

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 <buttontype"button"class"update-button"style"width:70px; height:40px;"data-toggle"modal&…

JS動態添加、刪除classl類

添加&#xff1a;document.getElementById("id").classList.add("className")&#xff1b; 刪除&#xff1a;document.getElementById("id").classList.remove("className")&#xff1b; jQuery版的添加和刪除class類 $(" "…

人生有三件事不可儉省

無論世界變得如何奢華&#xff0c;我還是喜歡儉省。這已經變得和金錢沒有很密切的關系&#xff0c;只是一個習慣。我這樣說&#xff0c;實在是因為儉省的機會其實很廉價&#xff0c;俯拾即是遍地滋生。比如不論牙膏管子多么豐滿&#xff0c;但你只能在牙刷毛上擠出1.5到2厘米的…

MyBatis : Mapper 接口以及 Example 使用實例、詳解

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 一、mapper接口中的方法解析 mapper接口中的函數及方法 方法 功能說明 int countByExample(UserExample example) thorws SQLExcept…

《學習R》筆記:科學計算器、檢查變量和工作區、向量、矩陣和數組、列表和數據框...

一、第二章 科學計算器 要檢查兩個數字是否一樣&#xff0c;要使用 all.equal() ,不要使用 &#xff0c; 符號僅用于比較兩個整型數是否存在相同 。 > all.equal(sqrt(2)^2,2) [1] TRUE > all.equal(sqrt(2) ^ 2,3) [1] "Mean relative difference: 0.5" >…