snap不是docker,snap是Ubuntu 16.04 LTS發佈時引入的新應用格式包,而docker是一個開源的應用容器引擎,開發者可以使用snap來安裝docker。
本文操作環境:ubuntu 18.04系統、Docker 20.10.11版、Dell G3電腦。
snap是docker嗎?
snap不是docker。
snap應用介紹:
如果你在使用Ubuntu 18.04/20.04 LTS版本的Ubuntu系統,會發現系統裡面多了一個應用格式套件— —.snap套件。
Snap套件是Ubuntu 16.04 LTS發佈時引進的新應用程式格式套件。目前已流行在Ubuntu且在其他如Debian、Arch Linux、Fedora、Kaili Linux、openSUSE、Red Hat等Linux發行版上透過snapd來安裝使用snap應用。
當你在安裝完snap後,你會發現在根目錄下會出現如/dev/loop0的掛載點,這些掛載點正是snap軟體套件的目錄。 Snap使用了squashFS檔案系統,一種開源的壓縮,只讀檔案系統,基於GPL協定發行。一旦snap被安裝後,其就有一個唯讀的檔案系統和一個可寫入的區域。應用自身的執行檔、函式庫、依賴套件都被放在這個唯讀目錄,意味著該目錄不能被隨意竄改和寫入。
squashFS檔案系統的引入,使得snap的安全性要優於傳統的Linux軟體包。同時,每個snap預設都被嚴格限制(confined),也就是限制系統權限和資源存取。但是,可透過授予權限策略來獲得對系統資源的存取。這也是安全性較好的表現。
Snap可包含一個或多個服務,支援cli(命令列)應用,GUI圖形應用程式以及無單一進程限制。因此,你可以單一snap下呼叫一個或多個服務。對於某些多服務的應用程式來說,非常方便。前面說到snap間互相隔離,那要怎麼交換資源呢?答案是可以透過interface(介面)定義來做資源交換。 interface被用來讓snap可存取OpenGL加速,音效卡播放、錄製,網路和HOME目錄。 Interface由slot和plug組成即提供者和消費者。
docker介紹:
Docker 是一個開源的應用程式容器引擎,讓開發者可以打包他們的應用程式以及依賴套件到一個可移植的映像中,然後發佈到任何流行的 Linux或Windows作業系統的機器上,也可以虛擬化。容器是完全使用沙箱機制,彼此之間不會有任何介面。
我們可以在Ubuntu18.04中使用snap安裝docker。
推薦學習:《docker影片教學》
以上是snap是docker嗎的詳細內容。更多資訊請關注PHP中文網其他相關文章!