Files
Charon/docs/debugging-local-container.md
GitHub Actions 8294d6ee49 Add QA test outputs, build scripts, and Dockerfile validation
- Created `qa-test-output-after-fix.txt` and `qa-test-output.txt` to log results of certificate page authentication tests.
- Added `build.sh` for deterministic backend builds in CI, utilizing `go list` for efficiency.
- Introduced `codeql_scan.sh` for CodeQL database creation and analysis for Go and JavaScript/TypeScript.
- Implemented `dockerfile_check.sh` to validate Dockerfiles for base image and package manager mismatches.
- Added `sourcery_precommit_wrapper.sh` to facilitate Sourcery CLI usage in pre-commit hooks.
2025-12-11 18:26:24 +00:00

1.2 KiB

Debugging the Local Docker Image

Use the charon:local image as the source of truth and attach VS Code debuggers directly to the running container. Backwards-compatibility: cpmp:local still works (fallback).

1. Enable the debugger

The image now ships with the Delve debugger. When you start the container, set CHARON_DEBUG=1 (and optionally CHARON_DEBUG_PORT) to enable Delve. For backward compatibility you may still use CPMP_DEBUG/CPMP_DEBUG_PORT.

docker run --rm -it \
  --name charon-debug \
  -p 8080:8080 \
  -p 2345:2345 \
  -e CHARON_ENV=development \
  -e CHARON_DEBUG=1 \
  charon:local

Delve will listen on localhost:2345, while the UI remains available at http://localhost:8080.

2. Attach VS Code

  • Use the Attach to Charon backend configuration in .vscode/launch.json to connect the Go debugger to Delve.
  • Use the Open Charon frontend configuration to launch Chrome against the management UI.

These launch configurations assume the ports above are exposed. If you need a different port, set CHARON_DEBUG_PORT (or CPMP_DEBUG_PORT for backward compatibility) when running the container and update the Go configuration's port field accordingly.