Packer is for building base images. You obviously need some provisioning there as well, but the focus is definitely on shipping iso images. Vagrant fits what you're after, but it'd wager you wouldn't be happy with it either.
It's essentially a Ruby dsl with the same goal as docker, though vagrant is way older (and still works just fine if you actually need such automated provisioning).
Testkitchen uses it if you're into infrastructure automation and want to see what sysadmins had pre docker.