The 23-year-old joins the Rams for an undisclosed fee, putting pen to paper on a contract that will keep him at Pride Park until 2021.
The United States-born midfielder becomes new Derby manager Frank Lampard's ninth signing of the summer, following in the footsteps of Mason Mount, Harry Wilson, Florian Jozefzoon, George Evans, Jack Marriott, Fikayo Tomori, Martyn Waghorn and Scott Malone.
"I'm pleased that we've been able to conclude the deal to bring Duane to Derby County," Lampard told the club's official website.
"He is an exciting talent and he can play in numerous attacking positions as well. He certainly fits into the profile for us in signing players at a good age for both the present and also the future."
Holmes, who scored 12 goals in 94 appearances for Scunthorpe, could make his debut for Derby during Saturday's clash with Leeds United.