Just a note with volunteer work, to avoid it being looked at as illegal working, it has to be volunteer work that would NORMALLY be volunteer work. For example, you could volunteer at a soup kitchen, or at Meals on Wheels, or the Salvation Army, or at a crisis hotline. All those positions are normally staffed by volunteers. You cannot do "volunteer" work that would otherwise normally be a paid position - for example, you can't volunteer to be the receptionist at an office, and you can't volunteer to work as a dishwasher in a restaurant. Those would normally be considered paid positions - the fact that you are "volunteering" is irrelevant in those scenarios.
So volunteering is excellent, just make sure it's somewhere that would normally be staffed by unpaid volunteers.
(And for the record, unpaid internships count as work, not as volunteering, since they are seen as taking the opportunity away from someone otherwise trying to further their career.)