浅谈Docker Desktop for Linux和Docker Engine区别

 更新时间:2023年10月27日 10:06:53   作者:小青龍  
本文主要介绍了Docker Desktop for Linux和Docker Engine区别,具有一定的参考价值,感兴趣的可以了解一下

1. Docker Desktop 介绍

Docker Desktop是一种一键安装应用程序,适用于Mac、Linux或Windows环境,允许您构建、共享和运行容器化应用程序和微服务。

它提供了一个直观的GUI(图形用户界面),允许您直接从您的机器管理容器、应用程序和映像。Docker Desktop既可以单独使用,也可以作为CLI的补充工具。

2. Docker Engine 介绍

Docker Engine是一种开源容器化技术,用于构建和容器化应用程序。Docker引擎作为一个客户端-服务器应用程序:

  • 具有长时间运行守护进程的服务器。
  • 指定接口的api,程序可以使用这些接口与Docker守护进程通信并向其发出指令。
  • 命令行接口(CLI)客户端docker。

CLI使用Docker api通过脚本或直接的CLI命令来控制Docker守护进程或与之交互。许多其他Docker应用程序使用底层API和CLI。守护进程创建和管理Docker对象,如镜像、容器、网络和卷。

Docker Engine可以通过Docker Desktop在各种Linux发行版、macOS和Windows上使用,也可以作为静态二进制安装。

3. Docker Desktop for Linux和Docker Engine有什么区别?

Docker Desktop for LinuxDocker 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 随系统自动重启,请使用如下命令:

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时,会创建一个专用的desktop-linux上下文来与Docker Desktop交互。在启动Docker Desktop时,会自动设置自己的上下文作为当前上下文。这意味着后续的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

FAQs for Linux

到此这篇关于浅谈Docker Desktop for Linux和Docker Engine区别的文章就介绍到这了,更多相关Docker Desktop for Linux和Docker Engine内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Docker Login 登录凭证安全存储方式

    Docker Login 登录凭证安全存储方式

    本文主要探讨Docker镜像仓库登录凭证的存储问题,Docker利用docker login命令校验用户镜像仓库的登录凭证,正确的用户名密码会以base64编码格式保存在Docker配置文件中,这种方式极易泄露且不安全
    2024-09-09
  • Docker创建tomcat容器实例后无法访问(HTTP状态404)

    Docker创建tomcat容器实例后无法访问(HTTP状态404)

    本文主要介绍了Docker创建tomcat容器实例后无法访问,HTTP状态显示404,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-07-07
  • docker在win10家庭版下构建laravel开发环境的教程详解

    docker在win10家庭版下构建laravel开发环境的教程详解

    这篇文章主要介绍了docker在win10家庭版下构建laravel开发环境,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-06-06
  • ubuntu22通过docker安装wechat启动后无界面的问题及解决方法

    ubuntu22通过docker安装wechat启动后无界面的问题及解决方法

    这篇文章主要介绍了ubuntu22通过docker安装wechat启动后无界面的解决方法,通过微信创建脚本发现一系列问题,最终在小编的努力下顺利解决,下面把解决过程分享给大家,需要的朋友可以参考下
    2022-07-07
  • Docker部署Graylog日志管理系统

    Docker部署Graylog日志管理系统

    Graylog是一个开源的日志管理平台,支持强大的搜索功能,本文主要介绍了Docker部署Graylog日志管理系统,具有一定的参考价值,感兴趣的可以了解一下
    2025-03-03
  • Docker 常用命令整理及使用注意事项总结

    Docker 常用命令整理及使用注意事项总结

    这篇文章主要介绍了Docker 常用命令整理及使用注意事项总结的相关资料,这里整理了Docker 的常用命令,说明这些命令是什么意思及使用方法,需要的朋友可以参考下
    2016-12-12
  • docker system命令集合的使用

    docker system命令集合的使用

    本文主要介绍了docker system命令集合的使用,主要包括清理没有使用的数据,包括镜像数据,已经停止的容器等等,具有一定的参考价值,感兴趣的可以了解下
    2021-10-10
  • 用docker运行postgreSQL的方法步骤

    用docker运行postgreSQL的方法步骤

    这篇文章主要介绍了用docker运行postgreSQL的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11
  • Docker 拉取镜像及标签操作 pull | tag

    Docker 拉取镜像及标签操作 pull | tag

    这篇文章主要介绍了Docker 拉取镜像及标签操作 pull | tag,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • docker 中的–mount 和-v 参数区别解析

    docker 中的–mount 和-v 参数区别解析

    这篇文章主要介绍了docker 中的–mount 和-v 参数区别解析,--mount 更为灵活,适用于更复杂的挂载需求,使用哪种方式主要取决于个人或团队的偏好和具体的使用场景,需要的朋友可以参考下
    2023-12-12

最新评论