You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让Docker Desktop启动时使用default上下文(unix:///var/run/docker.sock)

问题:如何让Docker Desktop启动时使用'default'上下文且DOCKER ENDPOINT为unix:///var/run/docker.sock?

现有场景

  • 系统启动时,Docker上下文为default:
    执行命令 docker context ls,输出如下:
    NAME               TYPE                DESCRIPTION                               DOCKER ENDPOINT                                     
    default *          moby                Current DOCKER_HOST based configuration   unix:///var/run/docker.sock                                                
    desktop-linux      moby                Docker Desktop                            unix:///home/username/.docker/desktop/docker.sock
    
    执行docker images命令可见:
    REPOSITORY    TAG       IMAGE ID       CREATED        SIZE
    hello-world   latest    9c7a54a9a43c   4 months ago   13.3kB
    
  • 执行命令 docker context use desktop-linux 切换到desktop-linux上下文,启动Docker Desktop后,执行docker context ls输出如下:
    NAME               TYPE                DESCRIPTION                               DOCKER ENDPOINT                                     
    default            moby                Current DOCKER_HOST based configuration   unix:///var/run/docker.sock                                                
    desktop-linux *    moby                Docker Desktop                            unix:///home/username/.docker/desktop/docker.sock
    
    此时docker images列表为空。
  • 若删除desktop-linux上下文,重新创建指向unix:///var/run/docker.sock的desktop-linux上下文,再次启动Docker Desktop后,旧上下文会被重新创建。

解决方法

方法1:修改Docker Desktop图形界面设置

  1. 打开Docker Desktop,进入设置页面。
  2. 切换到通用选项卡,取消勾选类似「自动配置CLI上下文」或「从命令行使用Docker CLI」的选项(不同版本表述可能略有区别)。
  3. 重启Docker Desktop,它将不再自动重建或切换到desktop-linux上下文。

方法2:手动修改Docker Desktop配置文件

  1. 先切换回default上下文:
    docker context use default
    
  2. 打开Docker Desktop的配置文件(路径通常为~/.docker/desktop/settings.json),添加或修改以下配置项:
    "cliContext": "default",
    "autoCreateContext": false
    
  3. 保存文件后重启Docker Desktop,启动后会默认使用default上下文,且不会自动重建desktop-linux上下文。

方法3:通过环境变量强制指定端点

在你的shell配置文件(比如~/.bashrc或~/.zshrc)中添加以下内容:

export DOCKER_HOST=unix:///var/run/docker.sock

保存后执行source ~/.bashrc(对应你的shell配置文件)使设置生效。这样Docker CLI会优先使用这个指定的套接字,无论Docker Desktop的上下文如何切换,都能保持端点为unix:///var/run/docker.sock。

内容的提问来源于stack exchange,提问作者Illya

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 15:07:21