在Mac OSX上,可以通过Dockerfile
构建docker镜像:
docker build -f Dockerfile .
在Debian / Ubuntu上,以上方法不起作用,只是卡在那里。
docker build - < Dockerfile
但是Mac OSX可以同时使用这两种语法。 为什么会这样?
是因为不同的Docker版本还是不同的OS上的不同Docker?
Mac上的Docker:
$ docker version
Client:
Version: 17.03.1-ce
API version: 1.27
Go version: go1.7.5
Git commit: c6d412e
Built: Tue Mar 28 00:40:02 2017
OS/Arch: darwin/amd64
Server:
Version: 17.04.0-ce
API version: 1.28 (minimum version 1.12)
Go version: go1.7.5
Git commit: 4845c56
Built: Wed Apr 5 18:45:47 2017
OS/Arch: linux/amd64
Experimental: false
在Ubuntu上的Docker:
$ docker version
Client:
Version: 17.06.0-ce
API version: 1.30
Go version: go1.8.3
Git commit: 02c1d87
Built: Fri Jun 23 21:23:31 2017
OS/Arch: linux/amd64
Server:
Version: 17.06.0-ce
API version: 1.30 (minimum version 1.12)
Go version: go1.8.3
Git commit: 02c1d87
Built: Fri Jun 23 21:19:04 2017
OS/Arch: linux/amd64
Experimental: false
如果它是不同的Docker版本,是否表示
docker build -f Dockerfile .
已过时,因为Mac版本比Ubuntu版本更早?
最佳答案
如我在我的版本中所见,它正在运行。我将这个答案留在这里,以便我们知道docker build -f Dockerfile .
在Mac上的Docker版本3上工作,在ubuntu上的docker版本5上工作,并在ubuntu上的docker版本6上挂起。
原答案:
我的系统在ubuntu上运行,我测试了两种构建方法,并且两者的工作方式相同。第一个是docker build -f Dockerfile .
第二个存在docker build - < Dockerfile
也许看看我的docker版本会有所帮助:
$ docker version
Client:
Version: 17.05.0-ce
API version: 1.29
Go version: go1.7.5
Git commit: 89658be
Built: Thu May 4 22:10:54 2017
OS/Arch: linux/amd64
Server:
Version: 17.05.0-ce
API version: 1.29 (minimum version 1.12)
Go version: go1.7.5
Git commit: 89658be
Built: Thu May 4 22:10:54 2017
OS/Arch: linux/amd64
Experimental: false
关于docker - Docker构建(MacOS与Ubuntu),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45049364/