Sachverhalt: A. Die ukrainische Staatsangehörige A._ (geb. 1963) hielt sich zunächst mit einem (vor der Ausreise bereits abgelaufenen) Schengen-Visum im Kanton Schaffhausen auf. Am 12. März 2011 heiratete sie in ihrem Heimatland den Schweizer Bürger B._ (geb. 1964), den sie im Februar 2011 während ihres Aufenthalts in der Schweiz über einen Internetchat kennen gelernt hatte. Am 7. Juli 2011 reiste sie erneut in die Schweiz ein und erhielt eine bis zum 6. Juli 2012 gültige Aufenthaltsbewilligung zum Verbleib bei ihrem Ehemann. In der Folge musste die Polizei mehrfach wegen häuslicher Gewalt intervenieren und die Ehegatten zeigten sich gegenseitig wegen damit im Zusammenhang stehenden Delikten an. Am 20. April 2012 untersagte das Bezirksgericht U._ A._, ihren Ehemann zu kontaktieren oder sich diesem oder der damals gemeinsam genutzten Wohnung zu nähern. Mit rechtskräftigem Urteil des Bezirksgerichts U._ vom 28. Januar 2013 wurde A._ wegen versuchter Drohung und Tätlichkeiten gegenüber ihrem Ehemann schuldig gesprochen. Das auf ihre Anzeige hin gegenüber ihrem Ehemann eingeleitete Strafverfahren war zum Zeitpunkt des vorinstanzlichen Urteils noch hängig. Die Ehe wurde am 4. Juli 2014 geschieden. B. Mit Verfügung vom 3. April 2013 wies das Migrationsamt des Kantons Zürich das Gesuch von A._ um Verlängerung der Aufenthaltsbewilligung ab und setzte ihr eine Ausreisefrist an. Gegen diesen Entscheid beschwerte sich A._ erfolglos bei der Sicherheitsdirektion (Entscheid vom 22. April 2014) und beim Verwaltungsgericht des Kantons Zürich, das die Beschwerde mit Urteil vom 25. September 2014 abwies. C. Am 19. November 2014 (Postaufgabe 25. November 2014) erhebt A._ Beschwerde beim Bundesgericht und beantragt, das Urteil des Verwaltungsgerichts des Kantons Zürich aufzuheben und das kantonale Migrationsamt anzuweisen, ihr erneut eine Aufenthaltsbewilligung zu erteilen. Zudem beantragt sie die Gewährung der unentgeltlichen Rechtspflege. Während die Sicherheitsdirektion auf eine Vernehmlassung verzichtet, schliessen sowohl das Verwaltungsgericht als auch das Bundesamt für Migration (ab 1. Januar 2015 Staatssekretariat für Migration) auf Abweisung der Beschwerde. Das Migrationsamt hat sich nicht vernehmen lassen.