kubearmor-client/docker/client.go
Asmit Kumar Rai d608657bf3
migrate docker SDK usage from docker/docker to moby/moby/client (#552)
Signed-off-by: asmit27rai <raiasmit10@gmail.com>
2026-07-07 13:33:59 +05:30

38 lines
774 B
Go

package docker
import (
"context"
"strings"
"github.com/kubearmor/kubearmor-client/recommend/common"
"github.com/moby/moby/client"
)
type Client struct {
*client.Client
}
func ConnectDockerClient() (*Client, error) {
cli, err := client.New(client.FromEnv)
if err != nil {
return nil, err
}
return &Client{cli}, nil
}
func (c *Client) ListObjects(_ common.Options) ([]common.Object, error) {
var result []common.Object
resp, err := c.Client.ContainerList(context.Background(), client.ContainerListOptions{})
if err != nil {
return nil, err
}
for _, ctr := range resp.Items {
result = append(result, common.Object{
Name: strings.TrimPrefix(ctr.Names[0], "/"),
Images: []string{ctr.Image},
Labels: ctr.Labels,
})
}
return result, nil
}