Prior to starting med school I had a bunch of pretty darn terrible jobs. Medical assistant comes to mind.... these people were extremely unhappy all of them. I also worked as a teacher/tutor, which was fine and I was earning an awesome amount for the amount of work I did (very little). When I was a medical assistant I worked with a lot of doctors in a lot of different situations. Of those that I worked most with, they were all in similar professional situations, but two of them were very happy, and the other was very angry with the world. What was the difference? In my opinion, their outside priorities, and their attitude in life. All of them had come from very poor areas and had dedicated their lives to giving back to underserved communities.
I think in the end, life is what you make of it. I am extremely glad I got some perspective and worked for a few years. In the most terrible job as a doctor I will NEVER get disrespected or taken advantage of, all while making just around the poverty level, like when I was a medical assistant. I will always compare my future situations to that.
A bad attitude will follow you to whatever job you are in, and many people will just not be happy regardless of what they are doing. Finding pure motives for what you want to do will help, along with embracing change when it comes. I think like above posters have said too, making priorities outside your career is imperative for a happy life, which makes a happy doctor.
Just my two cents