Files
DiscordBot-CloudflareWarp/CHANGELOG.md
T
ginoblij 1a9dc1d676 Initial Discord bot in Docker behind a per-container Cloudflare WARP tunnel
- discord.js 14 bot with /ping and /warp, periodic WARP egress-IP logging
- Dockerfile: node:22-bookworm-slim + cloudflare-warp 2026.7.1377.0 (.deb)
- entrypoint boots dbus/warp-svc, registers, connects, verifies warp=on
- docker-compose with NET_ADMIN, /dev/net/tun, sysctls, healthcheck
- deploy script, README, CHANGELOG, lockfile generated inside Docker

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-08 01:16:32 +02:00

1.3 KiB

Changelog

All notable changes to this project are documented here, newest first. Every change is committed and pushed so the history can be followed in git as well.

[1.0.0] - 2026-09-08

Added

  • discord.js 14 bot (bot/src/index.js) with /ping and /warp slash commands.
  • Periodic Cloudflare WARP check that logs the egress IP, warp=on flag, colo and warp-cli status, with automatic warp-cli connect when the tunnel is down.
  • docker/Dockerfile: node:22-bookworm-slim with the Cloudflare WARP Debian 12 client (2026.7.1377.0) installed from the official download URL; npm ci runs inside the build.
  • docker/entrypoint.sh: starts dbus and warp-svc, registers, sets mode warp, connects, and only starts the bot once Cloudflare's trace endpoint reports warp=on.
  • docker-compose.yml: one self-contained service per bot (own WARP tunnel, own registration volume), NET_ADMIN, /dev/net/tun, required sysctls, log rotation and a warp=on health check.
  • scripts/deploy.sh: ships the committed tree to the Docker host over SSH and restarts the stack.
  • package-lock.json generated inside a node:22-bookworm-slim container (no Node on the workstation).
  • README, .env.example, .gitignore, .dockerignore, .gitattributes (LF line endings).

Removed

  • Placeholder test file from the initial commit.