Docker 在 Windows 上 Docker 没有安装桌面卷
Docker on Windows without Docker Desktop volume mounting
我的目标是在 Windows (docker.exe) 中使用 docker-cli,但使用 Linux 容器, 没有 安装Docker桌面。我主要是按照这些说明使用 WSL2 安装 Ubuntu 20.04-LTS 并准备 dockerd 在此实例中 运行ning 的所有内容。 (https://dev.to/_nicolas_louis_/how-to-run-docker-on-windows-without-docker-desktop-hik)
我目前使用“-H tcp://127.0.0.1”启动 dockerd,它确实有效,我可以从 运行 容器中提取图像、构建图像等=35=]终端,我的环境包含DOCKER_HOST=tcp://127.0.0.1:2375
在安装 Docker Desktop 时,将卷绑定或安装到本地目录不起作用。
例如尝试 运行 jboss/keycloak 安装 /opt/jboss/keycloak/standalone/data 到某个本地路径给我:
docker: Error response from daemon: invalid mode: /opt/jboss/keycloak/standalone/data
这 - 再次 - 曾经与 Docker 桌面一起工作,所以我认为我的调用没有错误。
任何人都可以帮助我让它工作吗?
您的 docker 守护程序在 WSL 中 运行ning,您只是在 Windows.
上使用 de docker 命令连接到它
这意味着每个 docker 命令实际上是在 WSL 子系统上执行的,并且应该相应地指定路径。
特别是您应该在 WSL 中指定路径,通常您的 C:/
驱动器安装在 \mnt\c
下的 WSL 中。
我建议尝试使用这些路径修改您的 运行 命令,例如:
docker run -v C:\test\folder:/opt/jboss/keycloak/standalone/data ...
会变成:
docker run -v /mnt/c/test/folder:/opt/jboss/keycloak/standalone/data ...
确保你注意斜杠:在 WSL 中你需要一个正斜杠 (/
) 而 windows 并不关心。
我的目标是在 Windows (docker.exe) 中使用 docker-cli,但使用 Linux 容器, 没有 安装Docker桌面。我主要是按照这些说明使用 WSL2 安装 Ubuntu 20.04-LTS 并准备 dockerd 在此实例中 运行ning 的所有内容。 (https://dev.to/_nicolas_louis_/how-to-run-docker-on-windows-without-docker-desktop-hik)
我目前使用“-H tcp://127.0.0.1”启动 dockerd,它确实有效,我可以从 运行 容器中提取图像、构建图像等=35=]终端,我的环境包含DOCKER_HOST=tcp://127.0.0.1:2375
在安装 Docker Desktop 时,将卷绑定或安装到本地目录不起作用。
例如尝试 运行 jboss/keycloak 安装 /opt/jboss/keycloak/standalone/data 到某个本地路径给我:
docker: Error response from daemon: invalid mode: /opt/jboss/keycloak/standalone/data
这 - 再次 - 曾经与 Docker 桌面一起工作,所以我认为我的调用没有错误。
任何人都可以帮助我让它工作吗?
您的 docker 守护程序在 WSL 中 运行ning,您只是在 Windows.
上使用 de docker 命令连接到它这意味着每个 docker 命令实际上是在 WSL 子系统上执行的,并且应该相应地指定路径。
特别是您应该在 WSL 中指定路径,通常您的 C:/
驱动器安装在 \mnt\c
下的 WSL 中。
我建议尝试使用这些路径修改您的 运行 命令,例如:
docker run -v C:\test\folder:/opt/jboss/keycloak/standalone/data ...
会变成:
docker run -v /mnt/c/test/folder:/opt/jboss/keycloak/standalone/data ...
确保你注意斜杠:在 WSL 中你需要一个正斜杠 (/
) 而 windows 并不关心。