GithubHelp home page GithubHelp logo

azole / docker-ironman-2022 Goto Github PK

View Code? Open in Web Editor NEW
40.0 3.0 11.0 6.35 MB

《Docker 實戰 6堂課:56個實驗動手做,掌握 Linux 容器核心技術》中的實驗程式碼

Home Page: https://www.tenlong.com.tw/products/9786263335769

Dockerfile 12.95% JavaScript 30.35% HTML 5.86% CSS 17.26% C 20.92% Shell 1.99% Go 2.80% Roff 4.68% Java 2.60% Python 0.60%
container docker lab linux

docker-ironman-2022's Introduction

docker-ironman-2022

書籍連結:

本書內容改編自第 14 屆 iThome 鐵人賽 DevOps 組的冠軍系列文章《那些關於 Docker 你知道與不知道的事》。本書從啟動 Docker Container 開始,探索 Docker 的底層設計,進而學習 Linux 容器技術及其相關的 Linux 知識,包括 Namespace、Process 與網路等,同時也提供各種動手做實驗,讓你親手驗證讀到的理論與技術。

書中將探討五大主題:

  1. Docker Container
  2. Docker Image
  3. Linux Namespace
  4. Linux Process 及其與 Docker Container 的關係
  5. Container 與 Linux 的網路世界

全書提供 56 個動手做實驗,讓讀者能親自驗證學習到的理論,從「會用」進階到「知道」,讓 Docker 容器不再神秘,讓讀者不再心虛。讀者除了能熟悉 Docker,也能同時學習 Linux 相關知識,鞏固作業系統與網路的基本功,提升問題排查的能力,累積往下探索的基礎,讓未來的你也能自己動手挖掘底層技術。

初衷

透過參加鐵人賽與完成這本書,自己也學到了很多關於 Linux 的知識,設計了很多實驗去驗證自己的理解與觀察,或是從這些實驗的結果去找尋答案。

當初想要寫這樣的內容,是因為自己對 Docker 很有興趣,但市面上已經有很多很棒的 Docker 教學與實戰分享了,我問我自己,我還想讀些什麼呢?我的答案是,我會想要知道更底層的東西,想要知道這些好用的功能背後是怎麼做到的,我也想要更知道 Linux 一些,於是就給自己出了一個這樣的題目,過程中差點後悔,真的是有超過自己原本的能力 😂,但還好沒有放棄。

所以,這的確不是一本初階的書籍,是我嘗試要讓自己更進階一點點的努力,想要跟大家一起變得再厲害一點點的心意,再請大家多多指教了。

範例程式目錄

附錄

推薦閱讀

二刷

2023/09/15

image

謝謝所有支持與幫忙宣傳推薦的朋友,是你們讓這本書脫離了滯銷書的行列 🙏

每次去天瓏買書,都會跟老闆聊上兩句,從大學到現在,二十幾年了,前幾天特地去天瓏找老闆,向他報告,我終於也有一本書在他的書架上了。

天瓏老闆叮嚀我兩件事:

  1. 老闆特地帶我去書櫃前找到龍哥的《為你自己學 Git》,跟我說「每次要他改版,他都說沒有新內容不改版」,要我跟龍哥學習,要愛惜羽毛,不要輕易改版,有真的有對讀者有用的內容才可以。

  2. 老闆跟我說,買你書的人,不一定是因為這本書的內容,很有可能是因為你,因為支持你才買的,要珍惜這個 community。

老闆你好懂,我也這樣覺得,博碩的 Abby 通知我要二刷了,但我心裡想,我朋友好像都人手一本了,二刷要賣給誰呢?😅

二刷是平裝本,這次也學到,原來從軟精裝改成平裝本會是一本「新」的書,而之後,如果還能有再刷,就都是平裝本了,也就是第一刷的精裝本賣完後就沒有了、絕版了。平裝版定價會比較低,但精裝品質很好而且要絕版了,大家自行評估了。

感謝大家支持 🙇,我認真地來幫我自己寫個推薦(所以之前是...?):

不曉得大家會不會這樣,如果讀到的東西無法親眼看到或親手驗證就會覺得虛虛地,好像就只是「被告知」了這件事,而不是自己真的懂了。而我很幸運地,在 2015 年剛接觸 Docker 沒多久,就去上了 William 的課,受到了啟發、「知道」了原來可以往下探索。而我也真的就是一個很平凡的傢伙,沒有特別聰明、沒有特別努力,就是平常有碰到、有讀到什麼資料的時候,有時間的話,就去試著想辦法設計實驗去驗證看看那些讀到的東西,有時候完全不知道怎麼開始,有時候實驗本身是錯的,有時候則是實驗結果跟我的理解完全不同,不論對錯,這過程學到的東西遠遠大於我原本的預期。在有了一些實驗驗證後,這個實驗過程中觀察到的、超過我原本預期的結果,再繼續去研究,那又會是新一輪實驗的靈感了。

就這樣玩了好幾年,因為就是偶爾有方向的時候研究一下,累積的很慢,但過程好玩,好玩很重要,每一次不管結果如何,我真的很喜歡那種「知道更多了」的感覺,即便我不知道那有什麼用,我總相信哪一天也許就用上了。(還可以拿來寫鐵人賽,倒數開賽日,要參加的快喔!)

有一些朋友問我這本書適不適合初階,由於我自己也不是很厲害,所以我盡可能從「我原本也不會,但想要試試看自己設計實驗、往下挖掘該怎麼做」的角度去撰寫這一系列的文章,我原本也真的不會,所以就是讓自己回到一開始的樣子去記錄這些學習的過程。但實驗的過程與內容,的確又比單純使用角度多了那麽一點點,然後可能也不是你平常工作立即可以用上的,所以我不太知道該怎麼定位這本書是否初階。

不過我提供一個角度給大家思考看看,我自己去上課或參加讀書會的時候,除了課程本身的內容外,我會習慣性地去觀察講者怎麼組織一個知識、怎麼切入一個問題、怎麼看待一件事情,然後把這些觀察到的技巧運用到我能運用的地方。所以,如果你有自己想要嘗試探索的領域,但不知道怎麼開始,我推薦可以參考看看這本書,也許可以提供給你一些靈感。再往前一步,如果你跟當初的我一樣,不知道什麼是往下探索,那我也想請你翻翻這本書。最終,也許不一定是 Docker 或是 Linux,如果有朋友能夠因為這本書有了一點點啟發,將深挖與實驗的精神帶到自己有興趣的技術與領域,那我真的會覺得很開心!

我自己目前在從事教學工作,這真的是一份很棒的工作,很多時候你會發現,大家不是不想、不是不願意,而是不知道可以這樣做,或是想要做但不知道怎麼開始,我只需要展示一個方向、一個可能性就可以了,學員們就會自己走出自己的一條康莊大道,往往都比我還要優秀,那個時候就換我從他們身上學習。所以我常說導師工作就是個點火師,而這系列的文章、這本書,我想試著把這把火點到我教學場域以外的地方。

希望這本書是大家的地板,不是天花板,你不一定要參考這本書,這本書的內容或方式也不一定是最好的。我們都很棒,所以開始動手做吧,動手累積屬於你自己的知識體系。

docker-ironman-2022's People

Contributors

azole avatar

Stargazers

 avatar riverye avatar  avatar dsjxn avatar  avatar  avatar  avatar  avatar forink avatar  avatar Jimmy avatar  avatar  avatar Xiao Yi avatar Chih Ying avatar  avatar  avatar  avatar  avatar  avatar LiamLin avatar  avatar r567tw avatar  avatar TzuYi Chao avatar  avatar Edward avatar Emma avatar LiangC avatar XLion avatar  avatar CM Lee avatar jack755051 avatar Craig Wu avatar rjjq avatar Aki Cheng avatar  avatar Evan Hsu avatar Jarrian Gojar avatar 久绊A avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.