Add native TLS support to registry
This changeset provides simple tls support for a registry instance. Simply providing a cert and key file are enough to get a tls registry running. If the certs are trusted by the client, tls can be used throughout the push and pull process. If more complex TLS options are required, it is recommend that a proxy be used. Contributions will be accepted to add more features, if necessary. Signed-off-by: Stephen J Day <stephen.day@docker.com>
This commit is contained in:
parent
6cd2945b5c
commit
9f5916b2c4
2 changed files with 26 additions and 3 deletions
|
@ -47,9 +47,16 @@ func main() {
|
|||
handler = handlers.CombinedLoggingHandler(os.Stdout, handler)
|
||||
log.SetLevel(logLevel(config.Loglevel))
|
||||
|
||||
log.Infof("listening on %v", config.HTTP.Addr)
|
||||
if err := http.ListenAndServe(config.HTTP.Addr, handler); err != nil {
|
||||
log.Fatalln(err)
|
||||
if config.HTTP.TLS.Certificate == "" {
|
||||
log.Infof("listening on %v", config.HTTP.Addr)
|
||||
if err := http.ListenAndServe(config.HTTP.Addr, handler); err != nil {
|
||||
log.Fatalln(err)
|
||||
}
|
||||
} else {
|
||||
log.Infof("listening on %v, tls", config.HTTP.Addr)
|
||||
if err := http.ListenAndServeTLS(config.HTTP.Addr, config.HTTP.TLS.Certificate, config.HTTP.TLS.Key, handler); err != nil {
|
||||
log.Fatalln(err)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue