1) Even though generally it is correct for a person to abstain from making vows, if one does so in order to rectify his character traits, he is considered to be a person who is prompt to do the correct thing and is therefore praiseworthy. An example of this is someone who was gluttonous and vowed not to eat meat for a certain period of time, or he was addicted to wine and vowed to forbid himself from drinking wine, or indeed any other similar thing. Vows such as these are part of the service of Hashem and about such vows Chazal said that “Vows are boundaries for abstinence!”. (Kitzur Shulchan Aruch 67).
2) Nevertheless, one should not accustom oneself even to make this type of vow. Instead, one should try to control oneself without a vow. (ibid).