Running one-off ansible commands does not scale to a full server setup you can review and repeat. A playbook is a YAML file that maps host groups to an ordered list of tasks, so the whole setup lives in git. Use one when you want to install nginx, push its config and restart it only if the config changed. For something you will reuse across projects, package the tasks as a role instead.