我今天刚刚下载了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

当前回答

我也遇到了同样的问题,当我用DockerFile创建一个名为DockerFile的文件并提到在创建映像期间要执行的所有命令时,问题得到了解决。

其他回答

确保您运行了该命令

docker build . -t docker-whale 

从包含dockerfile的目录

最重要的是,确保文件名为Dockerfile。如果你用另一个名字是行不通的(至少对我来说不是)。

此外,如果您在Dockerfile所在的同一目录中,请使用.,即,

docker build -t Myubuntu1:v1。

或者使用绝对路径,即,

docker build -t Myubuntu1:v1 /Users/<username>/Desktop/ docker . txt

我的案例(从Windows 10运行):

将文件重命名为myDockerFile。Dockerfile到Dockerfile(不带扩展名)。

然后在文件夹外运行这个命令:

docker build .\Docker-LocalNifi\

这对我和我的同事都适用。

构建dockerfile的两种方法:

你可以决定不指定要构建的文件名,而只是指定一个路径来构建它(这样做的话,文件名必须是Dockerfile,不附加扩展名,例如:docker build -t docker-whale:tag path/to/Dockerfile

or

你可以用-f指定一个文件,不管你决定使用什么扩展名(在合理的范围内。txt, .dockerfile, .dockerfile等.),例如docker build -t docker-whale:tag /path/to/file -f docker-whale.dockerfile。

要构建Dockerfile,请将自动化的内容保存在Dockerfile中。不是Dockerfile,因为在打开文件命令时:

notepad Dockerfile

(由于写入了文本文件,因此无法构建该文件。)

要构建文件,运行:

notepad Dockerfile

现在运行:

docker build -t docker-whale .

确保您在Dockerfile的当前目录中。