Over simplification: http://authoritynutrition.com/how-food-addiction-works/ but a good start.
Food addiction or whatever we call it all occurs in the subconscious part of the brain and or physiological body. We have no direct access to this part of our brains.
There are other chemicals beyond dopamine, eg, serotonin, opioids, endorphins that cause similar issues in the brain. Shortage of leptin, inositol, many minerals and vitamins or excess ghrelin and insulin cause similar issue but body based.
The excesses can be consumed or produced by us, the body, or we just consume feedstock for the reaction, and we overproduce due to available feedstock. Or we can have a receptor problem, we just cannot see the dopamine (or other chemical). Some of us deal with cravings all our lives, only to have some idiot say "cravings will go away if you do this (whatever shit they are selling)".
The solution is conscious control of our food intake, control of our environment to control the stimulus, and developing a suitable philosophy of life. Yah. Some thing are up to us and some thing are not. We need to have no comments or opinions of those thing not up to us. Clears up space, and time. Our judgements, beliefs, values, philosophy, opinions and physical location are up to us, generally. Our will, desires, aversions, and thoughts are under our influence also. All else is not up to us.
Systems people would describe a replenishing loop in a "out of control" feed back state, into a naturally depleting main system with no (poor and unwanted) overflow protection control. The cause of the replenishing loop (but perhaps "loupe" would also get the meaning across as a magnifier) is natural, required, but out of control. The rate of natural depletion of the main system is not adequate to keep up, but can be adjusted to some extent, but required effort. The control system is not normally accessible, and is not very adjustable normally, but sometimes self corrects without any clearly known reason. Bypass wasting can be used, but this does not fix the issue. The only known workable solution is manual metering of the feed stock. It is troublesome, but effective, and requires frequent adjustment. Nobody want to do the job also, for it is a disliked ugly job and someone is always bitching.