推 TuCH: 學了一課 01/26 23:01
推 x246libra: 給推 原來雲端不一定支援 掛載 volume 以為都可以掛載 01/26 23:28
推 ab830921: 推學觀念 01/27 01:48
推 onegoman: 推。 01/27 07:44
→ MOONY135: 感謝說明 稅後6000p 01/27 08:03
推 vi000246: 推 01/27 09:51
推 ice831107: 推。 01/27 11:09
噓 pig2014: 請避免使用晶晶體,docker請用碼頭工人 01/27 15:18
豬貳零壹肆,我是覺得該用則用,硬翻成中文反而看不懂。
※ 編輯: qrtt1 (36.231.138.200 臺灣), 01/27/2020 16:38:39
※ 編輯: qrtt1 (36.231.138.200 臺灣), 01/28/2020 10:50:01
推 BignoZe: 推推 01/28 12:56
推 hiefal: 這篇講得很好,推個 01/28 15:02
推 SimoHsieh: 推! 01/28 15:19
推 tyoukensen: 看不懂,還是推一下。 01/28 16:52
→ easterday: 想要順便問一個問題:像下面這種docker指令 01/28 21:20
→ easterday: docker run -d -p 8888:8888 -p 8889:8889 bbsdocker/i 01/28 21:21
→ easterday: 有限制一定要甚麼作業系統嗎?(ex Linux or FreeBSD) 01/28 21:22
→ easterday: 那我用各種不同的linux dist會有很小的差別還是很大呢? 01/28 21:23
→ smartb: 回樓上, 能裝 docker engine 的話不管linux bsd 甚至 win 01/28 22:41
→ smartb: 10 pro 都可以跑 01/28 22:41
→ smartb: 執行結果應該都要一致 01/28 22:41
除了結果要一樣之外,有著不同的考量。
在早期對於 image 該用什麼有很多的試驗,
有人甚至想把 linux 弄好後,再弄 ssh 與 desktop,
簡直把它當 VM 在用了。 (好孩子不要學)
實戰了幾年後,普遍認同的是基於安全的考量
image 最好知道來源,並且不需要的東西就不要裝,以減少攻擊面積。
例如,沒有裝 ssh 相關的東西,那 openssl 有洞就不用理它了是不是 :)
基於上面的理由與 12 factor 概念被接受,
multi-stage 的支援是一種重要的宣示
https://docs.docker.com/develop/develop-images/multistage-build/
編譯時,用包含有 package manager 與 dev library 版的 image
完工的打包選用最小的 image,極端的狀態連 shell 都沒有。
像很常用的
https://github.com/alpinelinux/docker-alpine
與這幾年剛開始用的
https://github.com/GoogleContainerTools/distroless
12 fators 補充影片
https://www.youtube.com/watch?v=jufe_sHejXc
推 lasekoutkast: 推 01/29 15:39
推 kinggogo: 觀念很正確,針對db類型的服務,在架構上需要建置完整的 01/29 16:50
→ kinggogo: 保存機制 01/29 16:50
做好 backup and recovery plan 不再擔心刪庫到跑路。
通例一點來想,該怎麼收納 "state",
如果期望這些 container 都是 "stateless" 時,
當它們消失或暫時停用之時,我們資料該存在哪兒?
不外乎就是外部的 db service、object storage 或 block device。
(其實還有模擬的 filesystem,像 nfs 或 smb/cifs)
※ 編輯: qrtt1 (36.231.138.200 臺灣), 01/29/2020 17:44:34
推 uopsdod: 講的真清楚 01/30 01:05
推 zased: 之前用container化的gitlab,docker重啓後git資料全沒... 01/30 02:34
推 Arctica: 推@@ 對Container的觀念又更清楚了一點點 01/30 11:56
推 zhuzii: 推觀念++ 01/31 18:59
推 Jeniberg: 推 02/01 22:08
推 domototice: 推 謝謝大大的分享~! 02/12 05:00
推 domototice: 可以請教問題嗎?qrtt1大大,用docker能有容錯以及備份 02/12 05:15
→ domototice: 或者是能一直開著 讓Client端使用者端一直存取嗎? 02/12 05:16
→ domototice: 會有隨時當機的風險嗎? 比如 流量太大機器過熱之類的? 02/12 05:17
→ domototice: 感謝大大,求解答,不好意思....! 02/12 05:17
→ qrtt1: 單純的 docker 沒有 HA 機制,所以大家才會尋求 02/17 13:35
→ qrtt1: container orchestration 的機制,如 swarm 或 k8s 02/17 13:35
→ qrtt1: 常見的問題是被 oom killer 殺了或遇到其它 cgroup 限制 02/17 13:36
https://docs.docker.com/ee/ucp/admin/configure/join-nodes/
看起來在企業版有支援 HA,但目前的潮流是上 kubernetes。
docker 未來還會不會是主流並不明朗,因為去年它把公司賣給別人先拿錢出場了。
docker 說倒底是商業策略很成功的包裝,也改變了開發與部署的生態。
把原先不平易近人的相關技術整合在一起,
現在的主要概念轉換到 container 這中性的詞上了。
反正不管 docker 還會活多久,我們都有 container 相關技術能用。
目前只能定期盯一下 k8s 支援的前 3 名 container runtime 唄
https://kubernetes.io/docs/setup/production-environment/container-runtimes/
(去年 rkt 被拿掉了,就不用再追它囉)
※ 編輯: qrtt1 (36.231.131.153 臺灣), 02/17/2020 13:45:08