You don’t need a domain. However it is probably a good idea.
- You can’t get a globally trusted SSL certificate for an IP address. So you will need to use a self-signed certificate and manage trusting it on every device.
- If you don’t have a stable IP you will need to update bookmarks whenever it changes and memorizing it may be a chore.
If you don’t want to purchase your own domain you can likely use a free subdomain, this will often come from a dynamic DNS provider.
However if you can I would strongly recommend getting your own domain sooner rather than later. If only because it means that you can own your email address which is basically the keys to all third-party services you use these days. Domains are pretty cheap, probably <$20/year for a generic like .com or the TLD of your country. Personally I would happy skip out on eating out once a year to have my domain.
Material Files + SFTP is a winning combination. You probably already have SSH configured and it is quite secure.