Merge pull request #14970 from tiborvass/windows-registry-endpoint

registry: Change default endpoint on windows to a windows-specific one
This commit is contained in:
Tibor Vass 2015-07-30 22:41:34 -04:00
commit 56efe43c95
6 changed files with 52 additions and 30 deletions

View file

@ -20,28 +20,6 @@ type Options struct {
InsecureRegistries opts.ListOpts InsecureRegistries opts.ListOpts
} }
const (
// DefaultNamespace is the default namespace
DefaultNamespace = "docker.io"
// DefaultV2Registry is the URI of the default v2 registry
DefaultV2Registry = "https://registry-1.docker.io"
// DefaultRegistryVersionHeader is the name of the default HTTP header
// that carries Registry version info
DefaultRegistryVersionHeader = "Docker-Distribution-Api-Version"
// DefaultV1Registry is the URI of the default v1 registry
DefaultV1Registry = "https://index.docker.io"
// CertsDir is the directory where certificates are stored
CertsDir = "/etc/docker/certs.d"
// IndexServer is the v1 registry server used for user auth + account creation
IndexServer = DefaultV1Registry + "/v1/"
// IndexName is the name of the index
IndexName = "docker.io"
// NotaryServer is the endpoint serving the Notary trust server
NotaryServer = "https://notary.docker.io"
)
var ( var (
// ErrInvalidRepositoryName is an error returned if the repository name did // ErrInvalidRepositoryName is an error returned if the repository name did
// not have the correct form // not have the correct form

24
docs/consts.go Normal file
View file

@ -0,0 +1,24 @@
package registry
const (
// DefaultNamespace is the default namespace
DefaultNamespace = "docker.io"
// DefaultRegistryVersionHeader is the name of the default HTTP header
// that carries Registry version info
DefaultRegistryVersionHeader = "Docker-Distribution-Api-Version"
// DefaultV1Registry is the URI of the default v1 registry
DefaultV1Registry = "https://index.docker.io"
// CertsDir is the directory where certificates are stored
CertsDir = "/etc/docker/certs.d"
// IndexServer is the v1 registry server used for user auth + account creation
IndexServer = DefaultV1Registry + "/v1/"
// IndexName is the name of the index
IndexName = "docker.io"
// NotaryServer is the endpoint serving the Notary trust server
NotaryServer = "https://notary.docker.io"
// IndexServer = "https://registry-stage.hub.docker.com/v1/"
)

6
docs/consts_unix.go Normal file
View file

@ -0,0 +1,6 @@
// +build !windows
package registry
// DefaultV2Registry is the URI of the default v2 registry
const DefaultV2Registry = "https://registry-1.docker.io"

10
docs/consts_windows.go Normal file
View file

@ -0,0 +1,10 @@
// +build windows
package registry
// DefaultV2Registry is the URI of the default (official) v2 registry.
// This is the windows-specific endpoint.
//
// Currently it is a TEMPORARY link that allows Microsoft to continue
// development of Docker Engine for Windows.
const DefaultV2Registry = "https://ms-tp3.registry-1.docker.io"

View file

@ -1,3 +1,4 @@
// Package registry contains client primitives to interact with a remote Docker registry.
package registry package registry
import ( import (

View file

@ -5,6 +5,7 @@ import (
"fmt" "fmt"
"net/http" "net/http"
"net/url" "net/url"
"runtime"
"strings" "strings"
"github.com/docker/distribution/registry/client/auth" "github.com/docker/distribution/registry/client/auth"
@ -138,14 +139,16 @@ func (s *Service) LookupEndpoints(repoName string) (endpoints []APIEndpoint, err
TrimHostname: true, TrimHostname: true,
TLSConfig: tlsConfig, TLSConfig: tlsConfig,
}) })
// v1 registry if runtime.GOOS == "linux" { // do not inherit legacy API for OSes supported in the future
endpoints = append(endpoints, APIEndpoint{ // v1 registry
URL: DefaultV1Registry, endpoints = append(endpoints, APIEndpoint{
Version: APIVersion1, URL: DefaultV1Registry,
Official: true, Version: APIVersion1,
TrimHostname: true, Official: true,
TLSConfig: tlsConfig, TrimHostname: true,
}) TLSConfig: tlsConfig,
})
}
return endpoints, nil return endpoints, nil
} }