Securing website without domain name
Yesterday I installed the LAMP stack successfully with this tutorial https://www.digitalocean.com/community/tutorials/how-to-install-linux-apache-mysql-php-lamp-stack-on-ubuntu-16-04. At the end of the tutorial they say that you should secure Apache with Let's Encrypt but that only works if you have a domain and i don't have one.
So my question is if there are other ways to secure Apache if you only use the public ip to connect to my website?
I have set up a basic ufw firewall.
Another question I have is: Is it safe to share the public ip so people can look at my site? I have looked at this question https://www.digitalocean.com/community/questions/is-there-a-risk-to-my-website-with-my-public-ip-address but would like a better confirmation that it is safe to share it.
P.S. I don't really need a domain since I will mainly use the site as portfolio site to show to employers and for school.