Are there any 'boxes' available to download for Vagrant that closely mirror the Linux version and packages available for Amazon EC2 instances?
I am testing locally using Vagrant, currently using the Precise32 box. I am deploying my code to Amazon EC2 instances with the 'Amazon Linux AMI 2013.03' AMI.
The problem I am facing is that the packages available to install on the Precise32 box have different names e.g.
- php5-fpm - in the vagrant box
- php54-fpm - in the Amazon EC2 instance.
Although I could fix this by using variables in the Puppet config files to handle the different package names, that sounds a bit like a hack.
So are there any vagrant boxes available that will mirror the Amazon EC2 environment closely.
Or is it possible for me to tell a vagrant box to use the same packages source as an Amazon EC2 instance?
To clarify one thing - the reason I want to do this is so that I can test locally without having to commit everything first. Although Vagrant has support for AWS as a provider, that wouldn't actually achieve being able to test locally.
NOTE: This answer is not about finding a vagrant box for "Amazon Linux". This answer is about helping the original poster solve the goal of using the same system in production as in dev, which happens to be Ubuntu. As you can see in the comments below, OP agreed this would solve his problem.
Canonical provides official Ubuntu AMIs on EC2 and corresponding official Vagrant boxes for download.
For Ubuntu 12.04 Precise, the AMIs are listed at
and the Vagrant boxes are listed at
You can use this to start with the same base config on EC2 as you are using locally in dev.
No, there is no way to use Amazon Linux outside of EC2. If you want to use a Red Hat Enterprise Linux derivative (which Amazon Linux is), I recommend using CentOS 6 both in Vagrant and on EC2. You will find many CentOS base boxes here, and the official AMIs are listed here.
On 13-Dec-2017, Amazon released Amazon Linux 2. With this Amazon now provides downloadable images that will run in VirtualBox, VMWare, MS Hyper-V.
Prior to this, you did have the option to use the Amazon ECS Docker image. That continues to be available for both v1 and v2.
Have a look at Running Amazon Linux 2 as a Virtual Machine On-Premises.
I suspect someone will publish a vagrant box soon. In the interrim, it is fairly easy to build a base box yourself.
Also worth taking a look at http://www.packer.io it can be used to give you exactly the same ami image for your external vagrant
Amazon Linux is based on Redhat/CentOS, so the names will match more closely if you run one of those locally.
Debian/Ubuntu based Linux OSes change up the package names, e.g. "dev" instead of "devel" as a suffix for development packages.
Btw, you might want to check out the output of "rpm -qa" on an Amazon Linux instance, munge it to match CentOS/Redhat package names, and then think creating your own OS version that closely matches Amazon's.
As of 2017, yes.
The name of the Vagrant box is mvbcoding/awslinux hosted in Vagrant cloud (as all other public Vagrant boxes).
You can launch a box with the following command.