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

当前回答

从Windows或Linux中的命令行构建映像。

在当前目录中创建一个Docker文件。 例如, 从ubuntu 运行apt-get update 运行apt-get -y install apache2 添加。/var/www/html ENTRYPOINT apachectl -D前台 ENV名称Devops_Docker 不要以.txt扩展名保存。 在命令行下运行命令 Docker构建。- t apache2image

其他回答

错误消息具有误导性

这个问题实际上与符号链接无关。 通常,问题只是Docker找不到描述构建的Dockerfile。

典型原因如下:

Dockerfile has wrong name. It must be called Dockerfile. If it is called, for instance, dockerfile, .Dockerfile, Dockerfile.txt, or other, it will not be found. Dockerfile is not in context. If you say docker build contextdir, the Dockerfile must be at contextdir/Dockerfile. If you have it in, say, ./Dockerfile instead, it will not be found. Dockerfile does not exist at all. Does it sound silly? Well, I got the above error message from my GitLab CI after I had written a nice Dockerfile, but I had forgotten to check it in. Silly? Sure. Unlikely? No.

这只是因为记事本在Dockerfile末尾添加了“。txt”。

在Mac上,它适用于以下命令(我希望你的. dockerfile在你的根目录下)。

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

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

notepad Dockerfile

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

要构建文件,运行:

notepad Dockerfile

现在运行:

docker build -t docker-whale .

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

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