Vagrant is an application to create and support virtual development environments using virtual machines. Fedora has official support for Vagrant with libvirt on your local system. DigitalOcean is a cloud provider that provides a one-click deployment of a Fedora Cloud instance to an all-SSD server in under a minute. During the recent Cloud FAD in Raleigh, the Fedora Cloud team packaged a new plugin for Vagrant which enables Fedora users to keep up cloud instances in DigitalOcean using local Vagrantfiles.

How to use this plugin

First step is to install the package in the command line.

$ sudo dnf install -y vagrant-digitalocean

After installing the plugin, the next task is to create the local Vagrantfile. An example is provided below.

$ mkdir digitalocean
$ cd digitalocean
$ cat Vagrantfile
Vagrant.configure('2') do |config|
    config.vm.hostname = ''
    # Alternatively, use below to set the Droplet name. config.vm.hostname takes precedence.

    config.vm.provider :digital_ocean do |provider, override|
    override.ssh.private_key_path = '/home/kdas/.ssh/id_rsa' = 'digital_ocean'
    override.vm.box_url = "   digitalocean/raw/master/box/"

    provider.token = 'Your AUTH Token'
    provider.image = 'fedora-23-x64'
    provider.region = 'nyc2'
    provider.size = '512mb'
    provider.ssh_key_name = 'Kushal'

Notes about Vagrant DigitalOcean plugin

A few points to remember about the SSH key naming scheme: if you already have the key uploaded to DigitalOcean, make sure that the provider.ssh_key_name matches the name of the existing key in their server. The provider.image details are found at the DigitalOcean documentation. The AUTH token is created on the control panel within the Apps & API section.

You can then get the instance up with the following command.

$ vagrant up --provider=digital_ocean

This command will fire up the instance in the DigitalOcean server. You can then SSH into the box by using vagrant ssh command. Run vagrant destroy to destroy the instance.