From Middle High German -frī, -vrī, from Old High German *-frī, from Proto-West Germanic *-frī. Compare Dutch -vrij, English -free, Danish -fri.
-frei