MCPcopy Index your code
hub / github.com/docker/cli / convertToStandardNotation

Function convertToStandardNotation

cli/command/container/opts.go:900–918  ·  view source on GitHub ↗
(ports []string)

Source from the content-addressed store, hash-verified

898}
899
900func convertToStandardNotation(ports []string) ([]string, error) {
901 optsList := []string{}
902 for _, publish := range ports {
903 if strings.Contains(publish, "=") {
904 params := map[string]string{"protocol": "tcp"}
905 for param := range strings.SplitSeq(publish, ",") {
906 k, v, ok := strings.Cut(param, "=")
907 if !ok || k == "" {
908 return optsList, fmt.Errorf("invalid publish opts format (should be name=value but got '%s')", param)
909 }
910 params[k] = v
911 }
912 optsList = append(optsList, fmt.Sprintf("%s:%s/%s", params["published"], params["target"], params["protocol"]))
913 } else {
914 optsList = append(optsList, publish)
915 }
916 }
917 return optsList, nil
918}
919
920func parseLoggingOpts(loggingDriver string, loggingOpts []string) (map[string]string, error) {
921 loggingOptsMap := opts.ConvertKVStringsToMap(loggingOpts)

Callers 2

parseFunction · 0.85

Calls 1

ContainsMethod · 0.80

Tested by 1

Used in the wild real call sites across dependent graphs

searching dependent graphs…