The defender moves from Queens Park Rangers, who he joined last summer after spells with Swansea and Cardiff.
23-year-old Caulker will join up with the squad today, and has been allocated the number 26 shirt.
Executive Director of Football Les Reed said of the signing: “We have tracked Steven for a number of years, and so we are very happy to have finally brought him to the club.
“Although still young, he has played several seasons in the top flight, as well as representing England at senior level and featuring for Great Britain at the 2012 Olympic Games.
“Steven will offer us an excellent defensive option – especially with Florin Gardos ruled out after his knee operation.
“He is a player with a good blend of both experience and potential who is determined to grow, to develop and to prove himself during his time with the club.”
Caulker added: “I’m very pleased and very excited. This club has done fantastically well, especially over the last two years.
“To now join this club and to be a part of it for this year is something I’ve proud of.
“As soon as I got the phone call to say a fee was agreed with Southampton, I was delighted to get the opportunity to come and play under a great manager.
“This club is an ambitious one, so to be part of this is a great opportunity – it’s a chance for me to prove myself. I’m very excited for the season ahead.”