First step: Buy a domain name. You can get that in many places on the web, but DreamHost is a domain registrar, their prices are good, and their process is simple. If you also select them for hosting, you'll save a couple of steps down the road. (I use DreamHost to register all my domains.)
Second step: Get some hosting. If you are just starting out, shared hosting is fine. You can get hosting anywhere, but if you buy a hosting package here at DreamHost, and get your domain name here, you can go right to step three.
Third step: Upload your site. Since you've already created it locally, you can upload it via FTP. Yes, you can do it via a web ftp app, and DreamHost offers one, but your best bet is to use a fully-fledged FTP client like FileZilla. (FileZilla can save your login and configuration settings, making it fast and easy to log in and make changes to your site.)
If you get your hosting and domain through DreamHost, when you login to FTP, you'll see a directory with a name like "yoursite.com". You'll upload all your files to that directory.
Keep in mind that once you register a domain name, it takes a while for that transaction to make its way around the world. (Technically, you are waiting for DNS records to propagate.) Sometimes domains have become available in as little as half an hour for me, but it can take up to 24-48 hours.
If you have any other questions, please don't hesitate to ask.