Create the Droplet
What a VPS is
Understand the virtual machine you rent, the responsibilities the provider handles, and the administration work that still belongs to you.
A VPS, short for Virtual Private Server, is a virtual machine that runs on a provider’s hardware. You rent it by the month. DigitalOcean calls its virtual machines Droplets, and that’s the name I’ll use in this course.
From the inside, a Droplet looks like a normal Linux server. It has its own users, processes, files, network interfaces and a public IP address. The difference is what happens outside: DigitalOcean can create, resize, snapshot or destroy it from a control panel or an API, in seconds.
Who is responsible for what
DigitalOcean runs the data center, the physical hardware and the virtualization layer. Everything inside the operating system is your job:
- user accounts and SSH access
- operating system and application updates
- the host firewall
- Nginx and the application services
- application data and secrets
- backups, restore tests, monitoring and incident response
This is the mental model to keep for the whole course. A Droplet is not a managed application. DigitalOcean will happily report the machine as “powered on” while your app is crashed, the disk is full, or the TLS certificate expired. Nobody is watching those things for you.
I like this trade. You get full control, and you pay for it with a bit of operating work. Most of this course is about making that work small and predictable.
Check what you actually got
Once the server exists, these three commands tell you what you received:
cat /etc/os-release
uname -m
hostnamectl
The first prints the Ubuntu release, the second the CPU architecture (x86_64 on a standard Droplet), the third the hostname and machine details. Whenever you open a support ticket, these three answers go in it.
A public IP is a security boundary
The moment the Droplet gets a public address, automated scanners start knocking on it. Within minutes, not days. That does not mean you are compromised. It means updates, key-based login, a firewall and readable logs are normal operating work, not “hardening” you can postpone.
Rebuildable, or must be protected?
Before creating anything, take the application you want to host and write two lists. Under rebuildable, put the code and the generated build files. You can get those back from Git and a build command at any time. Under must be protected, put uploads, database data, secrets and private keys. Lose those and no rebuild brings them back.
That split will guide every deployment and backup decision in the rest of the course.
Lesson completed