зеркало из https://github.com/docker/labs.git
Merge pull request #384 from StefanScherer/fix-windows-registry-part-1
Use official golang, fix trailing space
This commit is contained in:
Коммит
991d4bce4c
|
@ -1,13 +1,9 @@
|
|||
# escape=`
|
||||
|
||||
# REMARK - when Go 1.8 is released we can use an official image for the base.
|
||||
# There is an issue with Go 1.7 and Windows 2016 SYMLINKD directories which causes Docker volumes and host mounts to fail.
|
||||
# This registry build uses a custom build of Go (@a2bd5c5) from the master branch to fix - https://github.com/golang/go/issues/15978
|
||||
|
||||
FROM sixeyed/golang:windowsservercore
|
||||
FROM golang:windowsservercore
|
||||
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop';"]
|
||||
|
||||
CMD .\go get github.com/docker/distribution/cmd/registry ; `
|
||||
CMD go get github.com/docker/distribution/cmd/registry ; `
|
||||
cp \"$env:GOPATH\bin\registry.exe\" c:\out\ ; `
|
||||
cp \"$env:GOPATH\src\github.com\docker\distribution\cmd\registry\config-example.yml\" c:\out\config.yml
|
||||
|
||||
|
|
|
@ -22,18 +22,16 @@ The Dockerfile for the registry builder is in [Dockerfile.builder](Dockerfile.bu
|
|||
|
||||
```Dockerfile
|
||||
# escape=`
|
||||
FROM sixeyed/golang:windowsservercore
|
||||
FROM golang:windowsservercore
|
||||
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop';"]
|
||||
```
|
||||
|
||||
The base image is [sixeyed/golang](https://store.docker.com/community/images/sixeyed/golang) which is in the Docker Store, built from [this Dockerfile](https://github.com/sixeyed/dockers-windows/blob/master/golang/Dockerfile). It has the Go toolset installed, but rather than using a released version, it builds Go from the source on GitHub to get the latest features.
|
||||
|
||||
> Note. There is an [official Go image](https://store.docker.com/images/golang) on Docker Store, which has Windows Server Core and Nano Server variants. That uses the latest release of Go - 1.7 - which has [an issue](https://github.com/golang/go/issues/15978) that stops you using Docker volumes on Windows. It's fixed in the latest source code, which is why we use an image that builds from source, but when Go 1.8 is released we can switch to using the official image as the base for the builder.
|
||||
The base image is the [official Go image](https://store.docker.com/images/golang) which is in the Docker Store.
|
||||
|
||||
There's a single `CMD` instruction to build the latest version of the registry and copy the built files to a known output location:
|
||||
|
||||
```Dockerfile
|
||||
CMD .\go get github.com/docker/distribution/cmd/registry ; `
|
||||
CMD go get github.com/docker/distribution/cmd/registry ; `
|
||||
cp \"$env:GOPATH\bin\registry.exe\" c:\out\ ; `
|
||||
cp \"$env:GOPATH\src\github.com\docker\distribution\cmd\registry\config-example.yml\" c:\out\config.yml
|
||||
```
|
||||
|
|
Загрузка…
Ссылка в новой задаче