我今天刚刚下载了Windows 10 64位的Docker工具箱。我正在看教程。当我试图使用Dockerfile构建一个映像时,我收到以下错误。

步骤:

启动Docker快速入门终端。 Testdocker创建后。 准备Dockerfile文档在“建立你自己的形象”网页链接 运行以下命令

Docker build -t Docker -whale。

错误:$ docker build -t docker-whale。

unable to prepare context: unable to evaluate symlinks in Dockerfile path: GetFileAttributesEx C:\Users\Villanueva\Test\testdocker\Dockerfile:系统找不到指定的文件。

顺便说一句:我尝试了提到的几个选项@ https://github.com/docker/docker/issues/14339

docker info

输出:

Containers: 4
 Running: 0
 Paused: 0
 Stopped: 4
Images: 2
Server Version: 1.10.1
Storage Driver: aufs
 Root Dir: /mnt/sda1/var/lib/docker/aufs
 Backing Filesystem: extfs
 Dirs: 20
 Dirperm1 Supported: true
Execution Driver: native-0.2
Logging Driver: json-file
Plugins:
 Volume: local
 Network: bridge null host
Kernel Version: 4.1.17-boot2docker
Operating System: Boot2Docker 1.10.1 (TCL 6.4.1); master : b03e158 - Thu Feb 11 22:34:01 UTC 2016
OSType: linux
Architecture: x86_64
CPUs: 1
Total Memory: 996.2 MiB
Name: default
ID: C7DS:CIAJ:FTSN:PCGD:ZW25:MQNG:H3HK:KRJL:G6FC:VPRW:SEWW:KP7B
Debug mode (server): true
 File Descriptors: 32
 Goroutines: 44
 System Time: 2016-02-19T17:37:37.706076803Z
 EventsListeners: 0
 Init SHA1:
 Init Path: /usr/local/bin/docker
 Docker Root Dir: /mnt/sda1/var/lib/docker
Labels:
 provider=virtualbox

当前回答

执行docker build -t getting-started。在你的项目目录中,确保Dockerfile是存在的,并且没有。txt扩展名。 如果你在Windows上,检查'文件扩展名'在下面的视图选项卡在 文件资源管理器显示是否存在.txt,如果前者为真,则删除它。 祝你好运。

其他回答

当我工作的路径在一个结点目录下时,我在Windows上得到了这个。所以我的解决办法就是不在这条道路上工作。

我得到了这个错误(在MacBook中),尽管我使用了正确的命令来创建图像,

docker build -t testimg .

后来我发现问题出在路径上。只需导航到包含Docker文件的正确路径。只需仔细检查当前的工作目录。没什么好惊慌的!

我用Visual Studio 2017 Docker支持工具创建了DockerFile,也出现了同样的错误。

过了一会儿,我意识到我不在包含Dockerfile的正确目录(~\source\repos\DockerWebApplication\)。我cd到项目内部的正确文件(~/source/repos/DockerWebApplication/DockerWebApplication),并成功创建了Docker映像。

如果你在Windows 8上工作,你将使用Docker工具箱。

在mydockerbuild目录下,运行以下命令,因为你的Dockerfile是一个文本文件:

docker build -t docker-whale -f ./Dockerfile.txt .

确保您移动到Dockerfile所在的目录。 确保Dockerfile是无扩展名的。也就是说,不是Dockerfile.txt、Dockerfile.rtf或任何其他文件。 确保你命名为Dockerfile,而不是Dockerfile, Dockerfile或任何其他。