I have good upperbody strength (can do 50 pushups in a single rep) but I can't run more than 500 m (7 minutes).How could I be able to run 1 mile in 6 to 7 minutes?
The way you get better at running is by doing more running.
Start by running short distances, then gradually increase your mileage.
The number one correlator with fast running is how much weekly mileage you do.
So start racking up those miles-it doesn't really matter how fast you run in training-and watch your mile time start to drop.
Warning: Lots of people get injured when increasing their mileage. Lots, as in most people. Start by running no more than three times per week, and not on consecutive days so your body can recover after each run.
Listen to your body, and increase your weekly mileage slowly. One rule of thumb is to increase your mileage by no more than 10% per week. There is a ton of running books out there; just look on Amazon.