Installing Debian Trixie in WSL Using Docker
Build a fresh Debian Trixie WSL instance from a Docker rootfs, sidestepping the Microsoft Store's one-instance-per-distribution limit.
- devops
- linux
- sysadmin
- wsl
Tag
16 posts
Build a fresh Debian Trixie WSL instance from a Docker rootfs, sidestepping the Microsoft Store's one-instance-per-distribution limit.
Sign your Git commits with the SSH key you already use for authentication — simpler than GPG, and verified on GitHub with an allowed-signers file.
Replace cron with systemd timers — writing the service and timer units, choosing between monotonic and calendar schedules, and checking they fired.
Generate ed25519 SSH keys and set up ssh-agent on Linux and WSL so your passphrase is entered once per session rather than on every connection.
Move a MongoDB database between environments with mongodump and mongorestore, including renaming the target database along the way.
Query systemd logs with journalctl: filtering by unit, time range and priority, following live output, and controlling how much disk the journal uses.
What git reset actually does — soft, mixed and hard — with worked examples for undoing commits and unstaging files without losing work.
Create an encrypted disk image on Debian 12 with cryptsetup and LUKS — formatting, mounting, and keeping sensitive files behind a passphrase.
Run Traefik as a reverse proxy in Docker Compose, with automatic Let's Encrypt certificates and container routing configured through labels.
Install Docker Engine on Debian 11 or 12 from Docker's official repository, including a clean-up path if a previous installation is in the way.
Lock down an SSH server so it only accepts key-based logins: generating a key pair, installing the public key, and safely disabling password authentication.
Making HTTP requests in Python with the requests library — GET and POST, query strings, headers, JSON payloads and handling the response.
Replace print statements with Python's logging module: verbosity levels, handlers, formatters, and sending log output where you actually need it.
Configure a basic Linux firewall with nftables, the packet filtering framework that replaces iptables — tables, chains, rules and making them persist.
How to parse command line arguments in Python with argparse, including the improvements Python 3.11 brought to the module.
A beginner's guide to Git — installing it, setting your identity, staging and committing changes, and understanding how distributed version control works.