Looking for Some Best Practices for Setting Up a Linux Server with Docker?

Hi community,

I am setting up a Linux server to run Docker containers and looking for advice on best practices to ensure performance, security and reliability. Here’s my current

File System Recommendations :- Is ext4 sufficient for most Docker workloads, or should I consider something like XFS or Btrfs: ??
Storage Optimization :- How do you handle large volumes of container data to avoid disk bloat: ??
Security Hardening :- Beyond the usual, are there specific tips for securing a Docker environment: ??
Monitoring Tools :- Any lightweight monitoring tools you recommend for a home server setup: ??

I have also read this thread https://discourse.linuxserver.io/t/how-to-get-started-with-multi-container-setup-qlik-sense-certification but couldn’t get enough solution. Would love to hear your insights or learn about any pitfalls to avoid.

Thanks in advance for sharing your expertise !!

With Regards,
Daniel Jose

EXT4 is fine though I’d recommend ZFS for data you care about.

I don’t do anything specific to prevent bloat besides docker system prune -af after updating containers.

Security tips

  • Use wireguard to access your things remotely instead of exposing them
  • Use PUID/PGID or user instead of running containers as root
  • Don’t use containers from untrusted sources
  • Update the host OS and containers every few weeks but don’t use apps like watchtower to avoid downtime
  • If you must publicly expose something, set up fail2ban/crowdsec, geoblock, x-robots-tag, sso
  • Never expose critical infrastructure like the router web-ui, nas web-ui, etc

Monitoring tools

  • Uptime-kuma
  • Beszel
  • Scheduled zfs scrubs and smart tests

If you have any questions feel free to join our discord server.