github.com/defang-io/defang/src@v0.0.0-20240505002154-bdf411911834/pkg/docker/info.go (about)

     1  package docker
     2  
     3  import (
     4  	"context"
     5  
     6  	"github.com/defang-io/defang/src/pkg/types"
     7  )
     8  
     9  func (d Docker) GetInfo(ctx context.Context, id ContainerID) (*types.TaskInfo, error) {
    10  	info, err := d.ContainerInspect(ctx, *id)
    11  	if err != nil {
    12  		return nil, err
    13  	}
    14  
    15  	// b, _ := json.MarshalIndent(info, "", "  ")
    16  	// println(string(b))
    17  
    18  	for _, mapping := range info.NetworkSettings.Ports {
    19  		// TODO: add port
    20  		// return "Host IP: " + mapping[0].HostIP + ":" + mapping[0].HostPort, nil
    21  		return &types.TaskInfo{IP: mapping[0].HostIP}, nil
    22  	}
    23  
    24  	return nil, nil
    25  }