No site will give you a full free domain, but you can get a free subdomain with sites like:
wordpress.com
weebly.com
wix.com
To have a custom domain name you'd have to
1. buy the domain name
2. possibly upgrade to a paid account for the site you chose