The 26-year-old has also previously played for Auxerre and Freiburg and joined Toulouse in the summer of 2016 after a loan spell at Dijon.
Manager Neil Lennon told the club website: "We are absolutely delighted to bring Christopher to Celtic. He is a quality player with great attributes and we are very much looking forward to him joining the squad and working with him."
Celtic have also announced the signing of 18-year-old midfielder Luca Connell from Bolton Wanderers.