You'll need a 24/7 box somewhere, but it could even be behind a residential NAT with only outbound connections (at reduced performance than having a public port). You can easily & transparently move it from one physical place to another; your hash identifies it, not the physical routing location.
I2P includes a webserver, to host the local configuration & status page. You can also host your own public site right from there, by dropping files in the right place. Click "Website" from your console page and it'll tell you what you need to do. The URL will be <some hash>.i2p, but you can register with one of the name servers to give it a more human-friendly <name>.i2p redirect, similar to DNS->IP address.
You'll need a 24/7 box somewhere, but it could even be behind a residential NAT with only outbound connections (at reduced performance than having a public port). You can easily & transparently move it from one physical place to another; your hash identifies it, not the physical routing location.