Skip to content

ADscan 3.2.1 — Docker-first release (migrate-docker)

Choose a tag to compare

@ADScanPro ADScanPro released this 04 Jan 19:31
· 75 commits to main since this release
10dd39a

🚀 Major change: Docker is now the default runtime

ADscan now installs and runs inside a Docker container by default to dramatically improve installation reliability across user environments. This reduces dependency issues caused by distro differences, Python tooling, apt repos, PATH contamination, and permissions.

  • adscan install now pulls the ADscan Docker image and prepares the BloodHound CE compose stack.
  • adscan start now launches ADscan inside the container with host workspaces mounted.
  • adscan check validates Docker prerequisites and container readiness (and avoids legacy host dependency checks unless explicitly requested).

🧰 Legacy mode still available (explicit)

For users who still want the previous “install everything on the host” flow:

  • Use --legacy (where supported) to run the legacy installer/check path.

🩸 BloodHound CE integration

  • Docker-mode includes automatic handling for the BloodHound CE stack (compose-based), ensuring required images/configs are present and containers can be started when needed.

🔧 Reliability improvements

  • Robust DNS discovery using dig (with compatibility fallbacks like disabling EDNS/cookies where needed).
  • Better handling of transient network/DNS failures during tool installation/pulls with retries and clearer diagnostics.
  • Improved handling of permission issues introduced by prior root-based installs (workspaces, tool state directories).

🐳 Container runtime enhancements

  • Workspace and log directories are bind-mounted from the host so data persists across runs.
  • Container entrypoint handles UID/GID mapping to reduce root-owned files on the host.
  • Added Docker runtime detection helpers to prevent Docker-in-Docker pitfalls and keep behavior consistent.

📦 Publishing & versioning

  • Release workflow now tags Docker images with the same version as the PyPI release (e.g. adscan/adscan:3.2.1) and updates latest to match.

⚠ Notes / Known behavior changes

  • Some host-level operations (e.g., system time sync and privileged actions) are now mediated through container/host helper logic depending on environment and permissions.
  • Older Kali/edge environments may still require manual Docker setup; see updated docs.

✅ Upgrade path

  • Existing users: run adscan install to pull the latest image and update the BloodHound CE stack.
  • For legacy installations, migrate by switching to Docker mode (recommended) or continue using --legacy.