github.com/kelda-inc/moby@v1.13.1/client/service_create.go (about) 1 package client 2 3 import ( 4 "encoding/json" 5 6 "github.com/docker/docker/api/types" 7 "github.com/docker/docker/api/types/swarm" 8 "golang.org/x/net/context" 9 ) 10 11 // ServiceCreate creates a new Service. 12 func (cli *Client) ServiceCreate(ctx context.Context, service swarm.ServiceSpec, options types.ServiceCreateOptions) (types.ServiceCreateResponse, error) { 13 var headers map[string][]string 14 15 if options.EncodedRegistryAuth != "" { 16 headers = map[string][]string{ 17 "X-Registry-Auth": {options.EncodedRegistryAuth}, 18 } 19 } 20 21 var response types.ServiceCreateResponse 22 resp, err := cli.post(ctx, "/services/create", nil, service, headers) 23 if err != nil { 24 return response, err 25 } 26 27 err = json.NewDecoder(resp.body).Decode(&response) 28 ensureReaderClosed(resp) 29 return response, err 30 }