Three of the eight victims were seriously wounded, CNN affiliate BFM TV reported. The station had earlier reported nine wounded but later revised the number to eight, citing police sources.
A suspect has been taken into custody, according to Lyon Mayor Gerard Collomb. The motive for the attack is not known.
“I am extremely shocked by the attack that just took place in the Lyon area, during which one person died and several others wounded, some seriously,” the mayor tweeted.
The suspected attacker is a 33-year-old asylum seeker, BFM reported.
The attack is not a terror investigation at the moment, a police trade union official told CNN.
French Interior Minister Christophe Castaner, via Twitter, expressed his condolences to “friends and family of the young man killed.” He said he was following the situation.
The assault occurred in Villeurbanne, a suburb of the southeastern city of Lyon, about 4:30 p.m., BFM reported. Emergency services responded to an exit at the Laurent Bonnevay stop of the Lyon Metro.
In September, seven people were injured,
including two British tourists, during an attack by a man wielding a knife and an iron bar in northeastern Paris, police said. The assault came after a series of knife attacks in France.