淺談Docker Desktop for Linux和Docker Engine區(qū)別
1. Docker Desktop 介紹
Docker Desktop
是一種一鍵安裝應用程序,適用于Mac、Linux或Windows環(huán)境,允許您構建、共享和運行容器化應用程序和微服務。
它提供了一個直觀的GUI(圖形用戶界面),允許您直接從您的機器管理容器、應用程序和映像。Docker Desktop既可以單獨使用,也可以作為CLI的補充工具。
2. Docker Engine 介紹
Docker Engine
是一種開源容器化技術,用于構建和容器化應用程序。Docker引擎作為一個客戶端-服務器應用程序:
- 具有長時間運行守護進程的服務器。
- 指定接口的api,程序可以使用這些接口與Docker守護進程通信并向其發(fā)出指令。
- 命令行接口(CLI)客戶端docker。
CLI使用Docker api通過腳本或直接的CLI命令來控制Docker守護進程或與之交互。許多其他Docker應用程序使用底層API和CLI。守護進程創(chuàng)建和管理Docker對象,如鏡像、容器、網絡和卷。
Docker Engine可以通過Docker Desktop在各種Linux發(fā)行版、macOS和Windows上使用,也可以作為靜態(tài)二進制安裝。
3. Docker Desktop for Linux和Docker Engine有什么區(qū)別?
Docker Desktop for Linux
和Docker Engine
可以并排安裝在同一臺機器上。Docker Desktop for Linux將容器和映像存儲在虛擬機內的隔離存儲位置,并提供限制其資源的控制。為Docker Desktop使用專用存儲位置可以防止它干擾同一臺機器上安裝的Docker Engine。
雖然可以同時運行Docker Desktop和Docker Engine,但在某些情況下,同時運行兩者可能會導致問題。例如,當為容器映射網絡端口(-p /——publish)時,Docker Desktop和Docker Engine可能會嘗試在您的機器上保留相同的端口,這可能導致沖突(“端口已經在使用”)。
我們通常建議在使用Docker Desktop時停止Docker Engine,以防止Docker Engine消耗資源并防止如上所述的沖突。
使用如下命令停止Docker Engine:
sudo systemctl stop docker docker.socket containerd
如果你設置了Docker Engine 隨系統(tǒng)自動重啟,請使用如下命令:
sudo systemctl disable docker docker.socket containerd
4. 如何在Docker Desktop和Docker Engine之間切換?
Docker CLI可用于與多個Docker Engine交互。例如,您可以使用相同的Docker CLI來控制本地Docker Engine和遠程運行在云中的Docker Engine實例。Docker上下文允許你在Docker Engine實例之間切換。
在安裝Docker Desktop時,會創(chuàng)建一個專用的desktop-linux
上下文來與Docker Desktop交互。在啟動Docker Desktop時,會自動設置自己的上下文作為當前上下文。這意味著后續(xù)的Docker CLI命令將以Docker Desktop為目標。在關機或Docker Desktop退出后,將當前上下文重置為default
上下文。
使用docker context ls
命令查看機器上可用的上下文。當前上下文用星號(*)標注;
docker context ls NAME DESCRIPTION DOCKER ENDPOINT ... default * Current DOCKER_HOST based configuration unix:///var/run/docker.sock ... desktop-linux unix:///home/<user>/.docker/desktop/docker.sock ...
如果您在同一臺機器上安裝了Docker Desktop和Docker Engine,您可以運行Docker context use
命令在Docker Desktop和Docker Engine上下文中進行切換。
使用default
上下文與Docker Engine
交互:
docker context use default default Current context is now "default"
使用desktop-linux
上下文與Docker Desktop
交互
docker context use desktop-linux desktop-linux Current context is now "desktop-linux"
關于docker上下文更多詳細,請參考:working-with-contexts
到此這篇關于淺談Docker Desktop for Linux和Docker Engine區(qū)別的文章就介紹到這了,更多相關Docker Desktop for Linux和Docker Engine內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Docker創(chuàng)建tomcat容器實例后無法訪問(HTTP狀態(tài)404)
本文主要介紹了Docker創(chuàng)建tomcat容器實例后無法訪問,HTTP狀態(tài)顯示404,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2024-07-07docker在win10家庭版下構建laravel開發(fā)環(huán)境的教程詳解
這篇文章主要介紹了docker在win10家庭版下構建laravel開發(fā)環(huán)境,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-06-06ubuntu22通過docker安裝wechat啟動后無界面的問題及解決方法
這篇文章主要介紹了ubuntu22通過docker安裝wechat啟動后無界面的解決方法,通過微信創(chuàng)建腳本發(fā)現一系列問題,最終在小編的努力下順利解決,下面把解決過程分享給大家,需要的朋友可以參考下2022-07-07docker 中的–mount 和-v 參數區(qū)別解析
這篇文章主要介紹了docker 中的–mount 和-v 參數區(qū)別解析,--mount 更為靈活,適用于更復雜的掛載需求,使用哪種方式主要取決于個人或團隊的偏好和具體的使用場景,需要的朋友可以參考下2023-12-12