Set up a jail, download the ports tree and share it with NFS. Then mount it accordingly on remote clients.
I wouldn’t do it that way though. It’s one thing to clone snapshots for jails, but tying different physical machines to each other that way will make updates a pain? And usually a physical machine has room to spare in a boot drive.