From the "Create" dropdown menu in DigitalOcean, choose "Droplets"
For "Choose an Image" select Ubuntu
Choose your plan (the lowest cost "Standard" option is great if you setting this up for the first time) and make any other selections (the defaults are all fine).
Click "Create Droplet" and wait until the progress bar completes. Congratulations, you now have a DigitalOcean Droplet!
Click on the three-dot dropdown menu to the right of your Droplet's name and select "Access console" to launch the web-based command line. You will be prompted to use your login of "root" and the password that was emailed to you (or SSH key, if you chose that option). Once you enter your username root and password (from the email) you will be prompted to change the password to something more secure.
You can also connect to your Droplet using SSH, from the command line:
Your new server will not have any of Meltano's requirements installed by default, so you will need to install them.
Your Ubuntu image will not come with Python 3.6+ set as the sysyem wide version by default, so you will need to complete the following steps.
Get the most updated version of all packages:
And then install Python:
apt install python
Now, if you run
python --version, you will see the system wide version is 2.7.15+ but Meltano requires 3.6+. Now we need to update the system wide version we want to be using with the command:
update-alternatives --install /usr/bin/python python /usr/bin/python3.6 1
To confirm the version is now correct, run
python --version again
python --version #Python 3.6.8
Next up, we need to install our package manager, pip.
apt install python3-pip
Now that you have Python configured system wide and pip3 installed, we'll use pip to install your virtual environment management tools:
pip3 install virtualenv
And then install it with:
apt-get install python3-venv
You may be tempted to create your DigitalOcean Droplet without a virtual environment, but due to Python-related installation issues and locked down dependencies for Meltano we highly recommend that you take advantage of the virtual environment.
Create a directory where you want your virtual environments to be saved:
Then create a new virtual environment inside that directory:
python -m venv venv/.venv/meltano
Activate the virtual environment using:
Now that you are inside your virtual environment, follow the Meltano installation instructions
meltano init YOUR_PROJECT_NAME
Launch the Meltano UI on your server:
cd YOUR_PROJECT_NAME meltano ui
When you run
meltano ui you will be prompted to view the Meltano UI at http://localhost:5000, however this will not work for DigitalOcean Droplets because they are hosted in the cloud.
Instead, use the IP address of your DigitalOcean Droplet and port 5000.
You can also install PostgreSQL to your DigitalOcean Droplet, and then use that database when you configure the Postgres target. DigitalOcean provides installation instructions here.