Split out Docker functionality into DockerService class