As for hosting, that is pretty much down to your requirements and what you think you will be needing. Obviously there is an abundance of webhosting companies such as HostGator, GoDaddy, Siteground, Hosting24 and One to name a few.
You would most likely benefit from using a hosting company that offers a free domain, otherwise you will have to buy the hosting/domain separately and then try and propogate them via name servers. Ideally you're looking for unlimited bandwidth, unlimited download space, you don't need to look into unlimited disk space as you won't be using a huge amount of memory for a portfolio. Whenver you look into separate control managements such as: Drupal, Joomla or Wordpress, you can be a little bit overwhelmed by the amount of content and features each platform offers and for a beginner, it can be come extremely convoluted.
Until you're comfortable with web hosting, domains and web design; look at a pre-configured portfolio package that allows you to edit content, upload/edit images and add new content without having to touch any code. Lots of them exist.
Apologies if this is considered 'grave digging'.