因為網路的知識已經不知道被遺忘到哪去了,導致理解 Docker 的網路配置花了我很多的時間,所以在這篇文章我特別寫下了很多用於理解 Docker 網路的詞彙,希望這樣能夠讓不懂網路的人也能夠理解。
Continue readingDocker Hub 與 GitHub 的 CI/CD 整合做的非常的好,所以在設定上也非常的直覺,今天就要來介紹怎麼在 Docker Hub 與 GitHub 之間完成 CI/CD 的工作。
Continue reading使用 Dockerfile 建置映像檔時,每一行指令都會新增一層 layer ,這都會使映像檔變大。 又或者是我們會在 Dockerfile 裡面執行建置的工作 (這在 CI/CD 很常見),例如執行 dotnet publish
來產生網站的發佈檔,為了可以使用 dotnet publish
產生發佈檔,我們會使用有 dotnet cli SDK 工具的映像檔,例如 Image - .NET Core SDK ,這映像檔相對來說會比較大,但是將網站執行起來只需要 image - ASP.NET Core Runtime 的映像檔案就好,並不需要含有 SDK 工具的映像檔。
而建置映像檔的時候,我們都希望映像檔越小越好,在 Docker 版本 17.05.0-ce 新增了多階段建置 (multi-stage build) 的支援,能夠幫助我們簡單的處理這個問題。
Continue reading雖然我們通常只要從 Docker hub pull 和 push 就可以管理映像檔。 但是面對客戶的環境要求,還是有很大的機會在基礎架構中使用私有的 registry 來管理我們的映像檔。
Continue reading一般來說我們要抓取映像檔只要從私有的 Registry 或是 Docker hub 上 pull 下來就好,但是如果有客戶對網路的存取有很嚴格的限制,這件事情可能就沒這麼簡單。 所以今天會介紹如何將映像檔匯出成檔案,然後再匯入映像檔。
Continue reading預設情況下 Docker 啟用的容器之 capabilities 是受限制的,例如我想要在 alpine 使用系統掛載的指令 mount 就沒辦法使用
Continue readingDocker 映像檔(Image)由是一層一層的 Layer 推疊起來的,因為要了解映像檔最好的方式就是看每一層 Layer 的資訊。
而 Docker 有提供 docker history
指令,可讓我們查詢此映像檔每一層 Layer 的資訊。
我通常在開發程式的時候,都喜歡把 Visual Studio 設定成全螢幕模式(Alt+Shift+Enter
),因為很討厭其他視窗的干擾。 而在開發程式的時候,有時候會想要 Google 一下,但是又不很想離開 Visual Studio 視窗,還好 Visual Studio 有提供內建瀏覽器。