He joined Hull City on 23 July 2004 from Burton Albion for a fee of £20,000, which could have risen to £60,000 depending on appearances. He was a regular starter at Burton, having made 78 league appearances for them in his three seasons at the club, but at Hull he spent several seasons mainly being used as cover for first-choice goalkeeper Boaz Myhill, making few first-team appearances and spending time on loan at Stockport County and Wycombe Wanderers.
In 2007–08, Duke impressed sufficiently in a League Cup match against Crewe to retain his place in the Hull team for the subsequent league game and demote Myhill to the bench. He was also selected for the next two matches, but a thigh injury prevented him from finally getting a run in the team.
On 5 January 2008 Duke underwent an operation to remove a testicular tumour. He returned to the squad on 29 March to take his place on the bench for a 3–0 victory against Watford.
On 1 June 2008, Duke completed the "Keep Your Eye On The Ball" 5 km run in London's Victoria Park, in aid of the Everyman Campaign cancer charity. In September 2008, Duke, manager Phil Brown, chairman Paul Duffen and other Hull City colleagues participated in Everyman's "Tacheback" campaign, growing moustaches to raise sponsorship money for the charity.
In Hull City's debut Premier League season in 2008–09, Duke again started the season as Myhill's understudy. He impressed however when given his chance in League Cup and FA Cup matches, keeping two clean sheets against Newcastle, which resulted in him being called up to make his Premier League debut on 28 January 2009 against West Ham. Although Hull City lost the game 2–0, Duke saved a penalty and was City's man-of-the-match. He retained his place in the side for the next nine league games.
On 4 March 2011, Derby County confirmed that they have signed Duke on loan from Hull City until the end of the season. The loan period was cut short when he was recalled by Hull City following an injury to reserve keeper Mark Oxley.
On 10 May 2011, following the end of the 2010–11 season, it was confirmed by the club that Duke had been released from Hull City along with three other players, ending seven years of service to the club. He began training with Derby County at the start of July 2011.
Duke went on trial at boyhood favourites Sheffield United and played 45 minutes of their 2011 pre-season match with Worksop Town FC as reported by the Sheffield Star. On 31 August 2011, Duke joined Bradford City on a two-year contract. He made his debut on 3 September 2011 in a 1–1 draw away to Morecambe.
On 20 February 2012 Duke went on loan to Northampton Town for the remainder of the 2011–12 season. On 28 March, Duke was recalled by Bradford after their first choice goalkeeper was sent off in a mass brawl the previous day in a match between Bradford and Crawley. He re-gained his place as first choice goalkeeper at the start of the 2012–13 season, and kept two clean sheets in his first three games.
On 11 December 2012, Duke was a member of the Bradford City starting XI that beat a strong Arsenal team in the quarter-final of the League Cup.
On 8 January 2013, Duke received man of the match for his performance against Premier League team, Aston Villa, in the semi-final of the League Cup, where Bradford won 3 – 1 to give themselves a two-goal advantage going into the second leg. In the second despite losing the game 2–1, Bradford made the final of the League Cup.
Duke was given a straight red card during the 2013 Football League Cup Final for fouling Jonathan de Guzman in the box. His replacement Jon McLaughlin conceded the subsequent penalty kick, and Bradford went on to lose the game 5–0.
In June 2013 Duke signed a two-year contract with Northampton Town. On 4 May 2015, he was released as manager Chris Wilder could not guarantee him first-team football
Bradford CityFootball League Two play-offs: 2013