File tree Expand file tree Collapse file tree 1 file changed +13
-8
lines changed Expand file tree Collapse file tree 1 file changed +13
-8
lines changed Original file line number Diff line number Diff line change @@ -126,17 +126,22 @@ func updateServices(service *types.ServiceConfig, cnts Containers) {
126
126
if len (cnts ) == 0 {
127
127
return
128
128
}
129
- cnt := cnts [0 ]
130
- serviceName := cnt .Labels [api .ServiceLabel ]
129
+ serviceName2containerID := make (map [string ]string )
130
+ for _ , cnt := range cnts {
131
+ serviceName := cnt .Labels [api .ServiceLabel ]
132
+ if _ , exists := serviceName2containerID [serviceName ]; ! exists {
133
+ serviceName2containerID [serviceName ] = cnt .ID
134
+ }
135
+ }
131
136
132
- if d := getDependentServiceFromMode (service .NetworkMode ); d == serviceName {
133
- service .NetworkMode = types .NetworkModeContainerPrefix + cnt . ID
137
+ if id , found := serviceName2containerID [ getDependentServiceFromMode (service .NetworkMode )]; found {
138
+ service .NetworkMode = types .NetworkModeContainerPrefix + id
134
139
}
135
- if d := getDependentServiceFromMode (service .Ipc ); d == serviceName {
136
- service .Ipc = types .NetworkModeContainerPrefix + cnt . ID
140
+ if id , found := serviceName2containerID [ getDependentServiceFromMode (service .Ipc )]; found {
141
+ service .Ipc = types .NetworkModeContainerPrefix + id
137
142
}
138
- if d := getDependentServiceFromMode (service .Pid ); d == serviceName {
139
- service .Pid = types .NetworkModeContainerPrefix + cnt . ID
143
+ if id , found := serviceName2containerID [ getDependentServiceFromMode (service .Pid )]; found {
144
+ service .Pid = types .NetworkModeContainerPrefix + id
140
145
}
141
146
var links []string
142
147
for _ , serviceLink := range service .Links {
You can’t perform that action at this time.
0 commit comments