Discipline is an admirable trait, and self-control is a poor strategy.
If you want to avoid unhealthy food, make sure it’s not allowed in your house. If you’re an alcoholic, don’t gather with your friends at the drunk shop (the bar). And if you’re healing an injury, don’t show up at the gym to do a “light workout” (note to self).
A better strategy is to control your environment so self-control becomes unnecessary.