本篇文章是個經驗分享文,作者分享使用 Docker 作為開發環境時值得注意的 Best practices,透過這些經驗分享希望能夠讓開發者少走一些冤枉路。
原文提出了 15 個經驗談,這邊幫大家節錄幾個,有興趣的可以點選原文瞭解更多!
1. One thing at a time
2. Be ephemeral
3. Utilize .dockerignore
4. Less is more
5. Secrets should be secret
6. PID 1 is your birth right
7. Share and Care
8. Vulnerability Scan
9. Tag like you mean it
10. Permissions are costly
11. Source of Truth
12. Always official
13. Don’t include debug
14. Use entry point script smartly
15. Size does matter
One thing at a time
建置 Image 的時候專注做好一件事情,每個 Image 應該有一個專心要解決的問題,譬如一個應用程式,一個小工具等。對於 Nginx 這類型的 Image 來說,應該沒有人會期望於裡面看到有 Apache 的應用程式吧?
Be ephemeral
這個主要探討的是該 Image 本身建置時應該要以 stateless 的概念去處理,未來不論是透過 docker 或是 Kubernetes 來管理部署時,Contaienr 都很有機會被重啟,每次的重啟都意味該容器是重新啟動。所以千萬不要讓你的 Image 變成多次重啟會導致應用程式出問題的形式,任何的這類型資料應該都要透過外部取得,不要塞到你的 Image 內
Utilize .dockerignore
善用 .dockerignore 這個檔案來將不必要的檔案從 build 過程給排除,使用方法與 .gitignore 類似。透過這個檔案的設定可以避免 docker build 的時候不會把一些過大或是完全不需要的檔案都送給 docker daemon,不當浪費時間也浪費空間。
Less is more
避免安裝任何無關或是非必要的套件到你的 image 中,特別是那些 "nice to have" 的理由。
註: 我個人是滿討厭把 Image 弄得很乾淨的,除錯什麼工具都沒有,連 ash/sh/busybox/bash 都沒有的 image 更是我討厭中的排行榜冠軍
Secrets should be secret
任何機密資訊都應該要於運行期間動態載入,而不是建置期間塞入。請使用其他工具譬如 Vault 來管理這些機密資訊,並且執行期間讓 Container 能夠存取到正確的值。
PID 1 is your birth right
Linux 環境下會使用 SIGTERN, SIGKILL 等相關的 Singal 來戳你的應用程式,請確保你運行的應用程式要能夠攔截這些訊號來處理並完成有效的 Graceful shutdown.
Share and Care
如果環境中有多個 Image 彼此有共享相同的工具與功能,與其每個 Image 都單獨建置維護不如建置一個 Base Image,接者讓所有要使用的 image 去載入使用即可。
透過這種方式可以讓整體的維護性與管理性更為簡單,每個 image 可以減少重複的程式碼,同時要升級時只要針對 base Image 處理即可。
https://medium.com/pradpoddar/avoid-costly-mistakes-using-advanced-docker-development-best-practices-acd812784109
同時也有1部Youtube影片,追蹤數超過27萬的網紅真電玩宅速配,也在其Youtube影片中提到,Oddworld Inhabitants旗下動作冒險遊戲《奇異世界:新鮮可口》,將於2月25日透過Steam登陸PC、Mac和Linux平台。雖然PC版發售時間比家用主機來得晚,但Steam版將會新增一些獨特內容,像是玩家們強烈要求回歸的“老式”控制模式設定,或是之前頗受好評的快速存檔讀取功能,另外...
linux排行榜 在 金老闆の拍播 Facebook 的最佳貼文
繼續昨天未盡齊全介紹
~年終大特價~
♥點歌機+音響♥總價值32600
破盤價歡迎詢價
現貨19.5寸電容螢幕 43萬首雲端歌庫
家庭KTV 點唱機 卡拉OK套裝音響(內含硬碟2T)
特色
1.電容屏(跟手機一樣的螢幕操作更加靈敏)
2.109年12月最新雲端系統,內建+雲端43萬首歌曲庫,每個月持續增加歌曲中.
3.點歌機系統(linux)+安桌雙系統可切換
4.內建10部電影影吧模式
5.多種歌曲搜尋模式:歌名注音點歌、歌星點歌、排行榜點歌
6.簡體繁體英文界面注音輸入
7.每個月自動更新雲端歌曲1000~2000首.
8.內置硬碟可放上4萬首歌曲(109年起全面使用台灣訂製歌庫硬碟)
9.多種方式點歌 遙控(手機微信點歌)
10.私人專屬曲庫 (收藏)可供多人儲存我的最愛歌曲)
11.HIFI高音質 高畫質影像 可調整升降key(變調)
12.外接硬碟可另外新增歌曲
13.可自行刪除歌曲,容量快滿會通知智慧刪歌,確保隨時下載新歌
14.可USB隨身碟加歌曲(影片檔:mkv、mpeg、mp4)
15.原廠配件:音源線、HDMI線、電源線、說明書
16.加裝YOUTUBE/手機同屏.新歌可搜尋伴奏演唱
17.保固一年,台灣發貨台灣維修 快速維修服務
18.內建多國語言歌曲:國語、台語、粵語、英語、日語、韓語、越南語.馬來語、柬埔寨語、印尼語、法語、泰語 12種語言
2T:內建4萬多首歌
linux排行榜 在 金老闆の拍播 Facebook 的精選貼文
~年終大特價~
現貨19.5寸電容螢幕 43萬首雲端歌庫
家庭KTV 點唱機 卡拉OK套裝音響(內含硬碟2T)
特色
1.電容屏(跟手機一樣的螢幕操作更加靈敏)
2.109年12月最新雲端系統,內建+雲端43萬首歌曲庫,每個月持續增加歌曲中.
3.點歌機系統(linux)+安桌雙系統可切換
4.內建10部電影影吧模式
5.多種歌曲搜尋模式:歌名注音點歌、歌星點歌、排行榜點歌
6.簡體繁體英文界面注音輸入
7.每個月自動更新雲端歌曲1000~2000首.
8.內置硬碟可放上4萬首歌曲(109年起全面使用台灣訂製歌庫硬碟)
9.多種方式點歌 遙控(手機微信點歌)
10.私人專屬曲庫 (收藏)可供多人儲存我的最愛歌曲)
11.HIFI高音質 高畫質影像 可調整升降key(變調)
12.外接硬碟可另外新增歌曲
13.可自行刪除歌曲,容量快滿會通知智慧刪歌,確保隨時下載新歌
14.可USB隨身碟加歌曲(影片檔:mkv、mpeg、mp4)
15.原廠配件:音源線、HDMI線、電源線、說明書
16.加裝YOUTUBE/手機同屏.新歌可搜尋伴奏演唱
17.保固一年,台灣發貨台灣維修 快速維修服務
18.內建多國語言歌曲:國語、台語、粵語、英語、日語、韓語、越南語.馬來語、柬埔寨語、印尼語、法語、泰語 12種語言
2T:內建4萬多首歌
linux排行榜 在 真電玩宅速配 Youtube 的最佳解答
Oddworld Inhabitants旗下動作冒險遊戲《奇異世界:新鮮可口》,將於2月25日透過Steam登陸PC、Mac和Linux平台。雖然PC版發售時間比家用主機來得晚,但Steam版將會新增一些獨特內容,像是玩家們強烈要求回歸的“老式”控制模式設定,或是之前頗受好評的快速存檔讀取功能,另外還有一系列新成就、速攻線上排行榜與雲端存檔功能等。《奇異世界:新鮮可口》也將加入全新遊戲區域,希望玩家能夠盡情享受。遊戲目前已在Steam上開放預購,有興趣回鍋的玩家們,別忘了去逛逛唷。
(C) Oddworld Inhabitants
粉絲團:http://www.facebook.com/Gamedbfans
休閒平台:http://myfun.gamedb.com.tw
最hot攻略:http://www.gamedb.com.tw/