Use proc/exe for reexec
You don't need to resolve the symlink for the exec as long as the process is to keep running during execution. Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
This commit is contained in:
parent
2c05aefc99
commit
59ec65cd8c
|
@ -862,14 +862,10 @@ func (daemon *Daemon) createSpec(c *container.Container) (*specs.Spec, error) {
|
||||||
|
|
||||||
for _, ns := range s.Linux.Namespaces {
|
for _, ns := range s.Linux.Namespaces {
|
||||||
if ns.Type == "network" && ns.Path == "" && !c.Config.NetworkDisabled {
|
if ns.Type == "network" && ns.Path == "" && !c.Config.NetworkDisabled {
|
||||||
target, err := os.Readlink(filepath.Join("/proc", strconv.Itoa(os.Getpid()), "exe"))
|
target := filepath.Join("/proc", strconv.Itoa(os.Getpid()), "exe")
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
|
|
||||||
s.Hooks = &specs.Hooks{
|
s.Hooks = &specs.Hooks{
|
||||||
Prestart: []specs.Hook{{
|
Prestart: []specs.Hook{{
|
||||||
Path: target, // FIXME: cross-platform
|
Path: target,
|
||||||
Args: []string{"libnetwork-setkey", c.ID, daemon.netController.ID()},
|
Args: []string{"libnetwork-setkey", c.ID, daemon.netController.ID()},
|
||||||
}},
|
}},
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue