|
@@ -97,8 +97,15 @@ func Merge(userConf, imageConf *Config) error {
|
|
|
if userConf.Dns == nil || len(userConf.Dns) == 0 {
|
|
|
userConf.Dns = imageConf.Dns
|
|
|
} else {
|
|
|
- //duplicates aren't an issue here
|
|
|
- userConf.Dns = append(userConf.Dns, imageConf.Dns...)
|
|
|
+ dnsSet := make(map[string]struct{}, len(userConf.Dns))
|
|
|
+ for _, dns := range userConf.Dns {
|
|
|
+ dnsSet[dns] = struct{}{}
|
|
|
+ }
|
|
|
+ for _, dns := range imageConf.Dns {
|
|
|
+ if _, exists := dnsSet[dns]; !exists {
|
|
|
+ userConf.Dns = append(userConf.Dns, dns)
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
if userConf.DnsSearch == nil || len(userConf.DnsSearch) == 0 {
|
|
|
userConf.DnsSearch = imageConf.DnsSearch
|