Packer Example - CentOS 7 minimal Vagrant Box using Ansible provisioner
Current CentOS Version Used: 7.5 (1804)
Pre-built Vagrant Box:
This example build configuration installs and configures CentOS 7 x86_64 minimal using Ansible, and then generates a Vagrant box file for VirtualBox.
The example can be modified to use more Ansible roles, plays, and included playbooks to fully configure (or partially) configure a box file suitable for deployment for development environments.
The following software must be installed/present on your local machine before you can use Packer to build the Vagrant box file:
Make sure all the required software (listed above) is installed, then cd to the directory containing this README.md file, and run:
$ packer build -var 'version=1.2.0' centos7.json
After a few minutes, Packer should tell you the box was generated successfully, and the box was uploaded to Vagrant Cloud.
Note: This configuration includes a post-processor that pushes the built box to Vagrant Cloud (which requires a
VAGRANT_CLOUD_TOKENenvironment variable to be set); remove the
vagrant-cloudpost-processor from the Packer template to build the box locally and not push it to Vagrant Cloud. You don't need to specify a
versionvariable either, if not using the
Testing built boxes
There's an included Vagrantfile that allows quick testing of the built Vagrant boxes. From this same directory, run one the following command after building the box:
$ vagrant up