I have an old ThinkPad-ish laptop gathering dust and a Raspberry Pi 4 on the wishlist for small self-hosting projects. Hot take: the old laptop might actually be the smarter, cheaper choice for a year or two. Is that insane, and what are the real tradeoffs I should be planning for?

My setup constraints: apartment, limited noise tolerance, dynamic ISP IP, budget under $100 for upgrades, want to run a few containers (Nextcloud, a tiny media server, home automation MQTT, maybe a reverse proxy). Practical points I care about: uptime, power draw, drive reliability, backups, security, and being able to recover if the thing dies.

Concrete checklist I would follow if I used the laptop:

  • Hardware: swap in an SSD if it has an HDD, 8+ GB RAM if you can, disable/replace a swollen battery, and dust out the fans. Old CPUs are fine for low-load containers. Expect 15-30W idle vs ~3-7W for a Pi.
  • OS: Debian/Ubuntu server, or Proxmox if you want VMs, or just plain Docker/docker-compose. Use a minimal install and disable desktop stuff.
  • Networking: give it a DHCP reservation or static on the router, set up a reverse proxy (nginx or Caddy) and TLS via Let’s Encrypt, consider Cloudflare or dynamic DNS if no static IP.
  • Backups: local backups with borg or restic to an external drive plus an encrypted remote backup (cheap VPS or offsite storage). Snapshot your important containers and DBs daily.
  • Power and reliability: use a cheap UPS if you care about graceful shutdowns - laptops have batteries but they fail; a UPS also protects the SSD. Monitor SMART for drive wear.
  • Security: SSH with keys only, fail2ban or sshguard, keep automatic security updates enabled for the kernel and critical packages, and run containers as non-root where possible.
  • Troubleshooting: check dmesg/syslog for thermal throttling, use htop/iostat to find bottlenecks, run smartctl to check drives, and use journalctl for service logs.

When to pick a Pi instead: if you absolutely need <10W power draw, want smaller form factor, or need a quiet 24/7 device with modern low-power silicon and easy HAT support. When to pick the laptop: when you want more CPU/RAM, built-in AC power handling, and easier local upgrades for cheap.

So: am I missing anything obvious that would make the laptop a stupid choice here? Or any gotchas from people who actually ran servers off old laptops long term?

  • null@piefed.nullspace.lol
    link
    fedilink
    English
    arrow-up
    6
    ·
    5 hours ago

    Not only not insane, but actually a great idea, for all the reasons you mentioned, but also because it’ll be x86 where the Pi is ARM, so software compatibility will be that much better.

  • WhiteOakBayou@lemmy.world
    link
    fedilink
    arrow-up
    11
    ·
    6 hours ago

    I use laptops a lot for servers. They have batteries and keyboard/monitors if you can’t ssh in for some reason. No reason not to use something you have

    • shyguyblue@lemmy.world
      link
      fedilink
      English
      arrow-up
      7
      ·
      6 hours ago

      These two reasons are why I love my old laptop.

      Can’t ssh? KVM is already built in, and i don’t have to hunt for my damn micro HDMI adapter.

      Power goes out? UPS is already built in. Schedule a safe shutdown when/if battery runs down.

  • Melon Husk™@sh.itjust.works
    link
    fedilink
    arrow-up
    7
    ·
    6 hours ago

    I mean, that old thinkpad has been dreaming of a job with purpose for years, hasn’t it? Good to see it getting off the bench. Your checklist is solid, no reason not to make use of what you’ve got!

  • litchralee@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    6
    ·
    edit-2
    6 hours ago

    Overall, it looks like you’re done your homework, covering the major concerns. What I would add is that keeping an RPi cool is a consideration, since without even a tiny heatsink, the main chip gets awfully hot. Active cooling with a fan should be considered to prevent thermal throttling.

    The same can apply to a laptop, since the intended use-case is with the monitor open and with the machine perched upon a flat and level surface. But they already have automatic thermal control, so the need for supplemental cooling is not very big.

    Also, it looks like you’ve already considered an OS. But for other people’s reference, an old x86 laptop (hopefully newer than i686) has a huge realm of potential OS’s, including all the major *BSD distros. Whereas I think only Ubuntu, Debian, and Raspbian are the major OS’s targeting the RPi.

    One last thing in favor of choosing laptop: using what you have on hand is good economics and reduces premature ewaste, as well as formenting the can-do attitude that’s common to self hosting (see: [email protected]).

    TL;DR: not insane. Don’t forget IPv6 support.

  • fuckwit_mcbumcrumble@lemmy.dbzer0.com
    link
    fedilink
    English
    arrow-up
    3
    ·
    5 hours ago

    I ran ESXi on an a ThinkPad W520 for years with no issues. Make sure you set a battery charge limit or else that battery will be toast in no time. A UPS is insane overkill. A laptop battery will long outlast the UPS batteries. Not just run time, but in terms of degradation. even without the charge limit.

  • czardestructo@lemmy.world
    link
    fedilink
    arrow-up
    2
    ·
    edit-2
    5 hours ago

    My previous primary server used to be a 12 year old laptop with an SSD. I deployed a laptop server in rural Greece and its bulletproof, it VPNs back home to the US and works during short power outtages. Only caveat is the CPU fan, if you run the server with a high load the fans are not designed for years of high usage. I got crazy enough with one server where I cut the bottom out and mounted a large aluminum plate to the CPU heatsink and made it passively cooled.

  • MuttMutt@lemmy.world
    link
    fedilink
    English
    arrow-up
    1
    ·
    6 hours ago

    Couple things to think about.

    Is the CPU supported? Anything 32 bit is pretty well done in the computing world.

    Why do you need caddy and SSL? Unless you plan to expose it directly to the internet which is a risk in and of itself is not needed. A cloudflare tunnel or VPN connection will give you access if needed with less exposure and risk.

    An SSD is great for speed but your going to spend twice as much for the same amount of storage and in most situations a hdd will work fine. So unless you intend to really do some thrashing on the storage with demanding high speed reads/writes or lots of read write operations you will have the ability to put in more storage for the same cost.

    Be wary of using USB drives to extend your storage. I’ve seen people do it and then deal with hassles and data loss. If you need more storage at some point build a NAS from a used server. My server is mostly used parts and has worked great. External drives are fine for offline backups.