I've seen a few really cool options:
One is to use a 5 gallon water jug that is gravity fed, as you mentioned. I've also seen people convert 3 and 4 gallon garden sprayers with much success, which is cool because it's pressurized instead of gravity fed. There are a ton of threads on the internet if you just search for garden sprayer shower. The rigid bottle of the sprayer would allow you to carry it full strapped to the roof, and you could easily refill it in the field with more water if necessary.
There's a cool store bought option called the Rinse Kit, which runs about $90. I've seen it at Bass Pro and it's pretty cool. It only holds 2 gallons, but with a pressurized spray, you can make that 2 gallons go as far as 4 or 5 gallons that are gravity fed. The only bad thing about it is that it uses some kind of rigid bladder to store pressure and release it, so it requires a pressurized water source to be filled (a hose, faucet, etc). You can't just re-fill it from a water jug in the field. I'd heard othat they were working on some kind of hand pump for refilling in the field, but I haven't seen it yet so feel free to look into it:
http://www.rinsekit.com/?utm_source=google&utm_medium=cpc&utm_term=rinse%20kit&utm_content=82326424683&utm_campaign=rinsekit_t1_sea_brand_rinsekit&gclid=CJuS_c_Ur8sCFY-PHwod_M4BzAFinally, there's a permanently mounted option called the Road Shower, which is really cool but very expensive at $300.
http://roadshower.com/woo/product/road-shower/Motorpig77 built something that is essentially a homebrew version of the same device, and his setup works very well but there was quite a bit of trial and error to keep the pressure from leaking. Check out this thread for more info:
http://www.sccxterra.com/smf/index.php?topic=2781.0My long term goal is to set up an entire fresh water system on my rig. I want to mount a 10-ish gallon ABS plastic tank under the area where the spare tire goes and install a 12v RV pump with an auto shut-off pressure switch. The pump would a line that is then split to run through a heat exchanger on one side (which will be hooked up to the coolant lines on the other side), and to stay cold on the other. Those two lines would come back into one another at a thermostatic shower mixing valve that would allow you to control the temperature and pressure at the output end. If I use a food grade ABS tank, it could be drinking water and shower water for the same trip. I'd have to fab up a skid plate to protect the tank as well, because that ABS would shatter if I came down on a rock or something. I've priced it all out and it wouldn't be THAT expensive. The tank is about $60, the pump is about $120, the heat exchanger is about $100, and the mixing valve is about $100. I could do the whole setup for under $500 including the skid plate, hoses, fittings, etc.
Edit: Here's a link to a guy running a similar setup to what I hope to achieve:
http://www.expeditionportal.com/forum/threads/72802-On-Board-Hot-Water-Shower-System/page2