Sokratis' contract was due to expire in 2018 but the Greece international has followed team-mate Pierre-Emerick Aubameyang in extending his deal.
Gabon striker Aubameyang furthered his deal until 2020 in July, despite having three years left to run on his original contract.
"We are very pleased that we have managed, in Sokratis, to gain the long-term commitment of another of our top performers," sporting director Michael Zorc said in a statement.
Former Werder Bremen centre-back Sokratis added: "The city of Dortmund, BVB and the people here have become a second home for me and my family.
"I am very happy that I will still be able to wear the black and yellow shirt for a long time yet."
Since arriving from Bremen in 2013, Sokratis has played 58 Bundesliga games for Dortmund.