Reproducing the diverse and agile locomotion skills of animals has been a longstanding challenge in robotics. While manually designed controllers have been able to emulate many complex behaviors, building such controllers often involves a tedious engineering process, and requires substantial expertise of the nuances of each skill. In this work, we present an imitation learning system that enables legged robots to learn agile locomotion skills by imitating real-world animals. We show that by leveraging reference motion data, a common framework is able to automatically synthesize controllers for a diverse repertoire behaviors. By incorporating sample efficient domain adaptation techniques into the training process, our system is able to train adaptive policies in simulation, which can then be quickly finetuned and deployed in the real world. Our system enables an 18-DoF quadruped robot to perform a variety of agile behaviors ranging from different locomotion gaits to dynamic hops and turns.