Skaffold:无法连接到 macOS 的 Docker Desktop 上的 Docker 守护进程

Dav*_*ide 2 docker kubernetes dockerfile skaffold docker-desktop

当我运行命令时,我收到以下消息skaffold dev

构建失败。无法连接到 unix 上的 Docker 守护进程:///var/run/docker.sock。检查docker是否正在运行。

工具版本:

  1. MacOS 桌面 Docker:4.13.0 (89412)
  2. 库伯内特:v1.25.2
  3. 支架:v2.0.0

Docker 运行正确,事实上我可以在集群上创建资源并使用 docker-cli 命令创建容器。我成功启动了 docker info 和 docker version。

命令/Applications/Docker.app/Contents/MacOS/com.docker.diagnose check

报告

“未检测到致命错误。”

(所有测试均通过)。

我还尝试设置DOCKER_HOST变量: DOCKER_HOST = /Users/<my folder>/.docker/run/docker.sock skaffold dev

结果:

invalid skaffold config: error getting docker client: unable to parse docker host `/Users/<my folder>/.docker/run/docker.sock`
Run Code Online (Sandbox Code Playgroud)

我的 Skaffold.yaml 文件

apiVersion: skaffold/v3
kind: Config
metadata:
  name: test
build:
  local:
    push: false
  artifacts:
    - image: <myimage>
      context: <folder>
      docker:
        dockerfile: Dockerfile
manifests:
  rawYaml:
    - infra/k8s/deployment.yaml
Run Code Online (Sandbox Code Playgroud)

我该如何解决?

Dav*_*ide 6

解决方案是在启动命令之前设置变量 DOCKER_HOST skaffold dev

DOCKER_HOST="unix:///Users/<you>/.docker/run/docker.sock" skaffold dev
Run Code Online (Sandbox Code Playgroud)