When Docker Machine provisions containers on local network provider or with a remote, cloud provider such as Amazon Web Services, Rackspace, DigitalOcean etc you must define both the driver for your provider and a base operating system. There are over 10 supported drivers and a generic driver for adding machines for other providers.
Each driver has a set of options specific to that provider. These options provide information to machine such as connection credentials, ports, and so forth.
For example, to create a Rackspace machine (ie) a docker machine on rackspace cloud :
$ docker-machine create --driver rackspace --rackspace-username=user --rackspace-api-key=KEY --rackspace-region=region vm
This will create a docker-machine on rackspace.