It was a timid start to the game by both sides, although Clement Grenier did force Yevhen Past into a solid save from a free kick.
Chornomorets pushed on after that, with Ivan Bobko's free kick sailing towards the front post where Oleksiy Gai headed just wide.
Gueida Fofana then fired wide for the hosts, but again Gai found room in the Lyon defence to hit a shot straight at Anthony Lopes.
The Lyon goalkeeper also had to be alert to prevent Anderson Santana's free kick from creeping in at the back post.
Chornomorets came close to breaking the deadlock early in the second half when Markus Berger hit the post with a header.
Past then tipped away Steed Malbranque's effort from the edge of the box. However, Chornomorets were reduced to 10 men when Evgeniy Zubeyko was sent off for a second bookable offence after leaving his foot in on Fofana.
Lyon soon took full advantage to secure their place in the last 16. Alexandre Lacazette cut inside the box, beat two defenders and fired a shot into the top corner.