ansible-droplet
is a cli tool to easily create ready-to-use droplets on Digital Ocean.
ansible-droplet create my_droplet
ssh my_droplet
- hosts: my_droplet
glances
server running to monitor the Droplet from outsideImportant Note: For now only python 2
is supported
pip install ansible-droplet
Use a
virtualenv
or install withpip install ansible-droplet --user
Before using the tool, a simple one-time-setup must be done.
ssh
public key, or generate one
ansible-droplet config
see below for more detail on the config parametersansible-droplet create my_droplet
~/.ssh/config
to be able to ssh directly with its name: ssh my_droplet
~/.ansible-droplet-inventory
ansible-droplet destroy my_droplet
~/.ssh/config
to be able to ssh directly with its name: ssh my_droplet
~/.ansible-droplet-inventory
When running ansible-droplet config
a couple of parameters must be provided:
Path to SSH key:
No brainer, the path to your SSH public key.
Default: ~/.ssh/id_rsa.pub
Name of SSH key on Digital Ocean:
To prevent uploading the public keys each time, Digital Ocean offers to store them under a name. It can be anything.
Default: Main SSH Key
Path to Ditigal Ocean token: The path to the file containing your Digital Ocean token in plain text. No defaults
User on Droplet - Username: Username for the sudo user being created on the Droplet. No defaults
User on Droplet - Default Password: Default password for the sudo user being created on the Droplet. No defaults Do not forget to change it after the first login!
You can specify the droplet size and specs when creating a new droplet. Simply list it after the droplet name:
ansible-droplet create my_droplet SPEC_NAME
For now, only 3 specs are supported2:
The list of specification are stored on the repository: Droplet Specs
It is possible to access the Droplet from any other ansible playbook via its name:
- hosts: my_droplet
For that purpose the file ~/.ansible-droplet-inventory
is created.
~/.ansible-droplet-inventory
contains ansible inventory entries for each Droplet created with the ansible-droplet
tool.
To use the droplet in a playbook, either:
~/.ansible-droplet-inventory
file~/.ansible-droplet-inventory
fileFrom there you can reference the Droplet directly by name.
You can use multiple configurations to support:
The configuration generated by ansible-droplet config
is kept in the installation directory.
To allow multiple configs, simply install multiple versions of ansible-droplet
in different virtualenvs3