Experimenting using Puppet Bolt plans to apply a role, in a similar way to Ansible roles.
See Installing Bolt docs.
Setup a test container:
docker-compose up -d
Get all necessary module dependencies:
bolt puppetfile install
Apply the "web" role to the container target:
bolt plan run role::web -t localhost:2000 --verbose -u root -p root --no-host-key-check