No, they are not. A volunteer is somebody who does some work without being required, normally on an unpaid basis. Do-gooder has definite negative connotations, it is somebody who believes that, or acts as if they are, morally superior to others because of their voluntary work, or goes about it in a bit of a condescending way. It is normally a bit of an insult to call someone a do-gooder.