In case you already have an hosting account somewhere else you can only buy the domain and set the DNS to the server where you have hosting. I use namecheap to buy domains as it is easy to use and it has a good price.