Terms of the deal weren't disclosed, but the Detroit News reported it was worth $16 million.
The former University of Southern California star spent the last two seasons with the Miami Dolphins, where he picked up 2,072 yards on 443 carries, logging 12 touchdowns. He made 78 catches for 588 receiving yards with three scores while with Miami.
The Lions were looking for a dependable running back after fielding the most pass-oriented offense in the NFL last season.
Bush was drafted out of college by the New Orleans Saints in 2006, with whom he spent two injury-filled seasons.
Bush has compiled 4,162 rushing yards, 372 catches for 2,730 yards and 44 total touchdowns in 91 NFL games overall.