Files
jdescopingtool/NEW/deploy/docker

JdeScoping Host Local Docker Deploy

This folder contains a repeatable Docker Compose workflow for the .NET 10 host (JdeScoping.Host) that serves the API + Blazor UI.

Location

  • Docker assets: /Users/dohertj2/Desktop/JdeScopingTool/NEW/deploy/docker
  • Runtime config mount: /Users/dohertj2/Desktop/JdeScopingTool/NEW/deploy/docker/runtime-config

Prerequisites

  1. Docker Desktop (or Docker Engine + Compose plugin)
  2. Local SQL container running on host port 1434 (for example scopingtool-sqlserver)

Commands

Run commands from /Users/dohertj2/Desktop/JdeScopingTool/NEW/deploy/docker.

Action Command
Initial deploy (build + run) ./deploy-host.sh deploy
Deploy without rebuild ./deploy-host.sh deploy --no-build
Start container ./deploy-host.sh start
Stop container ./deploy-host.sh stop
Restart/redeploy (build) ./deploy-host.sh restart
Restart/redeploy (no build) ./deploy-host.sh restart --no-build
Force rebuild + recreate ./deploy-host.sh rebuild
Show status ./deploy-host.sh status
Stream logs ./deploy-host.sh logs
Destroy container/network ./deploy-host.sh destroy
Destroy container/network/volumes ./deploy-host.sh destroy --volumes

Runtime Config Layout

The container uses bind mounts so config updates do not require rebuilding the image.

  • runtime-config/appsettings.json mapped to /app/appsettings.json (read-only)
  • runtime-config/appsettings.Development.json mapped to /app/appsettings.Development.json (read-only)
  • runtime-config/Pipelines/pipeline.*.json mapped to /app/config/Pipelines (read-only)
  • runtime-config/data/secrets.json mapped to /app/config/data/secrets.json
  • runtime-config/data/secrets.key mapped to /app/config/data/secrets.key

Local DB Connectivity

Default local deployment expects SQL Server to be reachable from the container at:

  • host.docker.internal:1434

compose.yaml also adds:

  • host.docker.internal:host-gateway

If your SQL endpoint differs, update the relevant connection string values in SecureStore (runtime-config/data/secrets.json) before deploying.

Health Check

After deploy:

curl http://localhost:5294/health

A valid response confirms the host is reachable (status may be Healthy, Degraded, or Unhealthy depending on dependency state).