WorkTracker/README.Docker.md
2026-03-17 13:53:33 +01:00

1.6 KiB

Running and debugging with Docker or local Couchbase Lite storage

Quick run (Docker Engine required):

  1. Build and start services:

    docker compose up --build

  2. App will be available on host port 8002 -> container 8080 (http://localhost:8002).

Docker persistence:

  • The app now uses an embedded Couchbase Lite database stored under /data/couchbase inside the container.
  • The compose file mounts that path from ${WORKTRACKER_DATA_PATH:-./.docker-data/couchbase} on the host.
  • Set WORKTRACKER_DATA_PATH before docker compose up if you want to move the database elsewhere.

Development in VS Code without Docker:

  • Use the WorkTracker: Debug Local launch configuration.
  • VS Code builds the project, starts the app directly with ASPNETCORE_ENVIRONMENT=Development, and opens the local URL when the server is ready.
  • Local development data is stored in App_Data/couchbase-dev by default.

Development in Docker:

  • The override file keeps a containerized dotnet watch flow for cases where you still want Docker.
  • The development container mounts the workspace into /workspace and stores its Couchbase Lite files under ./.docker-data/couchbase-dev on the host.

Manual development start:

  • docker compose up --build

Manual shutdown:

  • docker compose down

Notes:

  • The base compose file remains production-oriented; the override file is the optional containerized development layer.
  • The first container build takes longer because the dev image installs the .NET debugger.
  • The Dockerfile uses the .NET 9 *-noble images so local builds and container builds stay aligned with the SDK available in VS Code.