It sounds like a sty, Use warm compresses to bring it to a head and replace all of your eye make up. Make sure to wash your bedding in hot soapy water. If this doesn't resolve within a few days, you need to see your doctor.
This is called a stye also know as hordeolum.
Styes usually settle on their own in a few days.
But as yours is painful you may need an antibiotic cream from your doctor.