| package client | |
| import ( | |
| "context" | |
| "encoding/json" | |
| "github.com/moby/moby/api/types/volume" | |
| ) | |
| // VolumeInspectOptions holds options for inspecting a volume. | |
| type VolumeInspectOptions struct { | |
| // Add future optional parameters here | |
| } | |
| // VolumeInspectResult holds the result from the [Client.VolumeInspect] method. | |
| type VolumeInspectResult struct { | |
| Volume volume.Volume | |
| Raw json.RawMessage | |
| } | |
| // VolumeInspect returns the information about a specific volume in the docker host. | |
| func (cli *Client) VolumeInspect(ctx context.Context, volumeID string, options VolumeInspectOptions) (VolumeInspectResult, error) { | |
| volumeID, err := trimID("volume", volumeID) | |
| if err != nil { | |
| return VolumeInspectResult{}, err | |
| } | |
| resp, err := cli.get(ctx, "/volumes/"+volumeID, nil, nil) | |
| if err != nil { | |
| return VolumeInspectResult{}, err | |
| } | |
| var out VolumeInspectResult | |
| out.Raw, err = decodeWithRaw(resp, &out.Volume) | |
| return out, err | |
| } |