Cook agreed to a one-year, $3.6 million contract, sources told ESPN. He signed the deal after passing a physical Monday, a source told ESPN Packers reporter Rob Demovsky.
The Packers made an offer to Cook during his visit March 14, a source told Demovsky. Green Bay also pursued Cook last season before the trade deadline.
Cook, who signed a five-year, $35 million deal with the Rams as a free agent in 2013, was a casualty of Los Angeles' purge on Feb. 19, when the team cut him along with veterans James Laurinaitis and Chris Long. Keeping Cook would have carried an $8.3 million cap hit.
He posted 142 receptions for 1,786 yards and eight touchdowns while playing with multiple quarterbacks in his three seasons with the Rams, including 39 catches for 481 yards in 2015.
Prior to arriving in St. Louis, the 6-foot-5 Cook played four seasons with the Tennessee Titans after being selected in the third round of the 2009 NFL draft. Cook, who will turn 29 next month, has 273 receptions for 3,503 yards and 16 touchdowns in 107 career games.
ESPN's Adam Schefter, Josina Anderson, Adam Caplan and Nick Wagoner contributed to this report.