From fc45d9c1192ebdcb3e46cbf4ef561e7b7367adbe Mon Sep 17 00:00:00 2001 From: Michael Crosby Date: Wed, 8 Mar 2017 11:42:36 -0800 Subject: [PATCH] Chown grpc socket based on config Signed-off-by: Michael Crosby --- cmd/containerd/config.go | 2 ++ cmd/containerd/main.go | 3 +++ 2 files changed, 5 insertions(+) diff --git a/cmd/containerd/config.go b/cmd/containerd/config.go index 146a4a4..9964813 100644 --- a/cmd/containerd/config.go +++ b/cmd/containerd/config.go @@ -58,6 +58,8 @@ func (c *config) decodePlugin(name string, v interface{}) error { type grpcConfig struct { Socket string `toml:"socket"` + Uid int `toml:"uid"` + Gid int `toml:"gid"` } type debug struct { diff --git a/cmd/containerd/main.go b/cmd/containerd/main.go index b7224bc..8e2a234 100644 --- a/cmd/containerd/main.go +++ b/cmd/containerd/main.go @@ -330,6 +330,9 @@ func serveGRPC(server *grpc.Server) error { if err != nil { return err } + if err := os.Chown(path, conf.GRPC.Uid, conf.GRPC.Gid); err != nil { + return err + } go func() { defer l.Close() if err := server.Serve(l); err != nil {