Homelab — MySQL Server

An old Ubuntu laptop turned into a Docker-based database server: a persistent environment to practice SQL, data modeling and database administration on the local network.

4
deployment phases
24/7
server uptime

The challenge

Turn an old laptop running Ubuntu into an efficient database server for development and data analysis, using Docker for isolation and portability.

The goal was a local Data Engineering environment able to:

  • Host a MySQL database persistently;
  • Be reachable from other machines on the network (like a Windows PC);
  • Offer a simple management interface for the Docker environment.

Solution and methodology

Four-phase rollout, focused on OS stability, network security and Docker modularity:

  1. OS preparation — stability and remote access over SSH;
  2. Docker installation — the virtualization platform;
  3. DBMS deployment — MySQL 8.0 in a container;
  4. Management and access — remote connections from Power BI, Python scripts and DBeaver.

Field notes

Two technical hurdles drove most of the learning:

  • Connectivity — exposing the container to the LAN meant understanding bind address, port mapping and Ubuntu’s firewall;
  • MySQL 8.0 authentication — the new caching_sha2_password plugin broke legacy clients; fixed by adjusting the auth method per user.

Results

A fully functional environment, validated on two pillars: a stable Docker server running 24/7 and structured remote access from any machine on the network.