Heat on the Vreg

I am useing an Arduino Pro mini 5v version. one digi pin is controlling the coil of a relay that pulls 23ma. I believe the v-reg on the pro mini is a 100 ma regulator, and each digi pin can source 40ma. When the relay is energized, the ATmega chip gets worm and the regulator gets very warm, It has been on for about 2 hours. The coil is the only thing that is pulling power from the Pro mini.

So, is the regulator insufficant, and should I instead use the VCC and power the mini from an external 5v source?

I am also thinking of changing the relay to a latching type so the coil is not always pulling power when ON.

Problem solved, I will supply 5v to the VCC pin and not use the on board v-reg. No heat build up at all now.