Category · 14 articles
DevOps
Servers, databases, TLS, reverse proxies, and keeping production systems reliable.
Sep 1, 2025
DevOps
Install Redis on Ubuntu Server: Official APT Repo & Remote Access
Redis is an in-memory datastore you reach for when milliseconds matter for cache or ephemeral queues. Walk through the Redis-maintained apt repository, flip systemd on for redis-server, and adjust bind plus requirepass before you punch firewall holes—mirroring how I pair database installs with nginx-focused snippets elsewhere on the site.
Jan 1, 2025
DevOps
Creating a PostgreSQL Superuser: Quick Linux Setup with psql
Bootstrap a PostgreSQL superuser on Linux: open psql as the postgres OS user, create the role, list privileges, and prove login. Stack this after your install notes and before you widen the network edge.
Jan 1, 2025
DevOps
How to Enable PostgreSQL Remote Connections on Ubuntu (Safely)
Walk through PostgreSQL remote access on Ubuntu without pretending every IP is friendly: listen_addresses, pg_hba.conf allow-lists, restarts, listening checks on 5432, and firewall habits that match the rest of your VPS baselines.
Jan 1, 2025
DevOps
PostgreSQL on Ubuntu: Install with Apt and Open psql
PostgreSQL on Ubuntu installs cleanly through stock apt repositories when your indexes are current: apt-get update, install postgresql plus postgresql-contrib, sudo into psql as the postgres role, run SELECT version(), and memorize where postgresql.conf, pg_hba.conf, data directories, and logs live before tightening access.
Dec 24, 2024
DevOps
Creating Linux MySQL Admin Users: CREATE USER, GRANTS, FLUSH PRIVILEGES
Walk CREATE USER patterns on Linux hosts, GRANT ALL PRIVILEGES on schemas, rerun FLUSH PRIVILEGES so grants stick, sanity-check mysql logins from the shell, and debug authentication failed echoes before you widen remote-host access alongside UFW snippets you reuse across this site.
Dec 24, 2024
DevOps
Enable MySQL Remote Connections on Linux: mysqld.cnf, Port 3306, and Firewall Discipline
Walk through enabling MySQL remote access without pretending port exposure equals safety: widen bind-address in mysqld.cnf, restart mysql, prove something listens on TCP 3306, then layer UFW and user grants so reachability and authorization stay different problems.
Dec 24, 2024
DevOps
How to Install MySQL 8 on Ubuntu Server: APT, systemd, and first lockdown
Step through apt install mysql-server on Ubuntu Server, start and enable the unit with systemctl, set a workable root credential, unpack every mysql_secure_installation prompt, and confirm mysql --version plus error logs—stack-friendly prep for backends and sidecars like nginx I already scripted elsewhere.
Nov 29, 2024
DevOps
MongoDB Admin User Setup with mongosh: createUser, Roles & Verification
Learn how to create and configure MongoDB admin users fast: mongosh sessions on the admin DB, db.createUser with the classic role triple stack, pragmatic verification against Authentication failed regressions when authSource does not match.
Nov 29, 2024
DevOps
Enable MongoDB Remote Connections Safely: bindIp, mongod.conf, and Firewall Basics
Walk through enabling MongoDB remote access without skipping the sharp edges: edit net.bindIp for your server address, restart mongod, confirm port 27017, then layer UFW and authentication so port exposure does not become a free-for-all.
Nov 29, 2024
DevOps
Install MongoDB 7.0 on Ubuntu Server: Official APT & systemd Setup
Walk MongoDB org packages on Ubuntu from apt update through mongodb-org install, wire mongod.service with systemd, verify mongosh-friendly binaries with mongod --version, and log where /etc/mongod.conf hides before you tighten auth or poke port 27017 outward—matching the APT cadence stacks use beside nginx Postgres or MySQL.
Oct 26, 2024
DevOps
Free SSL with Certbot and Nginx on Ubuntu
Stop chasing browser warnings: install python3-certbot-nginx on Ubuntu, issue a Let's Encrypt certificate with HTTP validation, redirect HTTP to HTTPS, and confirm systemd renewal hooks with a dry run before traffic spikes.
Oct 25, 2024
DevOps
Nginx Reverse Proxy: Map Your Domain to a Localhost App
When your app already listens on a port but your domain still shows the default Nginx page, a small reverse-proxy server block fixes it. Here is the config I paste first, how each line earns its keep, and the exact commands to enable and reload safely.
Sep 14, 2024
DevOps
Install and Configure Apache2 on Ubuntu EC2
I use Apache when I want a straightforward HTTP daemon on a small Ubuntu box without rewriting every tutorial path. Here is the exact apt flow, the UFW profile I enable alongside SSH, and the security-group edit people forget after locking the host down.
Sep 14, 2024
DevOps
Install Nginx on Ubuntu Server: apt, UFW, systemd, welcome page
Follow apt install nginx on Ubuntu Server, align UFW application profiles with whether you want port 80 only or port 443 too, use systemctl status nginx for quick verification, then hit the welcome page so you know HTTP reaches Nginx—not only localhost.
The newsletter
New articles in your inbox.
Occasional articles on engineering, tooling, and software development practices. No marketing, no fluff — just the article, when it's ready.
Unsubscribe with one click. Your email never leaves the list.