The port city of Mariupol has been under constant siege for days with thousands of people trapped with no power or heat.