From 5c23af4ebbb9161f776833694270d5c08bd4b8df Mon Sep 17 00:00:00 2001 From: chenjiankun Date: Thu, 27 Jul 2023 15:31:32 +0800 Subject: [PATCH] docker: remove socket file when get file fd failed if socket.File() return error, then the socket file will be left over. --- runtime/v1/shim/client/client.go | 3 +++ 1 file changed, 3 insertions(+) diff --git a/runtime/v1/shim/client/client.go b/runtime/v1/shim/client/client.go index c5a9bba..4c134c2 100644 --- a/runtime/v1/shim/client/client.go +++ b/runtime/v1/shim/client/client.go @@ -71,6 +71,9 @@ func WithStart(binary, address, daemonAddress, cgroup string, debug bool, exitHa f, err := socket.File() if err != nil { + if err1 := RemoveSocket(address); err1 != nil { + logrus.Warningf("failed to remove socket %s: %w", address, err1) + } return nil, nil, errors.Wrapf(err, "failed to get fd for socket %s", address) } defer f.Close() -- 2.33.0