Files
Charon/docs/debugging-local-container.md
GitHub Actions af8384046c chore: implement instruction compliance remediation
- Replace Go interface{} with any (Go 1.18+ standard)
- Add database indexes to frequently queried model fields
- Add JSDoc documentation to frontend API client methods
- Remove deprecated docker-compose version keys
- Add concurrency groups to all 25 GitHub Actions workflows
- Add YAML front matter and fix H1→H2 headings in docs

Coverage: Backend 85.5%, Frontend 87.73%
Security: No vulnerabilities detected

Refs: docs/plans/instruction_compliance_spec.md
2025-12-21 04:08:42 +00:00

1.3 KiB

title, description
title description
Debugging the Local Docker Image Developer guide for attaching VS Code debuggers to Charon running in Docker containers.

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.