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

25 lines
1.2 KiB
Markdown

# 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`.
```bash
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.