disk_usage.go 571 B

1234567891011121314151617181920212223242526
  1. package client
  2. import (
  3. "encoding/json"
  4. "fmt"
  5. "github.com/docker/docker/api/types"
  6. "golang.org/x/net/context"
  7. )
  8. // DiskUsage requests the current data usage from the daemon
  9. func (cli *Client) DiskUsage(ctx context.Context) (types.DiskUsage, error) {
  10. var du types.DiskUsage
  11. serverResp, err := cli.get(ctx, "/system/df", nil, nil)
  12. if err != nil {
  13. return du, err
  14. }
  15. defer ensureReaderClosed(serverResp)
  16. if err := json.NewDecoder(serverResp.body).Decode(&du); err != nil {
  17. return du, fmt.Errorf("Error retrieving disk usage: %v", err)
  18. }
  19. return du, nil
  20. }