You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+1-57Lines changed: 1 addition & 57 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -35,61 +35,6 @@ Use `PORT` to run on a custom port:
35
35
PORT=4174 npm run serve
36
36
```
37
37
38
-
## Demo
39
-
40
-
Run the isolated demo with production build output:
41
-
42
-
```bash
43
-
npm run demo
44
-
```
45
-
46
-
Then open `http://127.0.0.1:4175` and sign in with `demo` / `demo`. The demo starts with a populated security profile and checklist progress and keeps changes only in memory. All mutable demo data is restored to its original seed every day at `00:00 Europe/Istanbul`; a process restart also restores it. Existing demo sessions are invalidated at the daily boundary, and open pages reload to the sign-in screen so stale browser data cannot be written back. The demo does not write to `PSC_SETTINGS_FILE` or enable account registration.
47
-
48
-
Use `LOCKSTEP_DEMO_PORT` (or `DEMO_PORT`) to change the demo port. The demo binds to `127.0.0.1` by default; set `LOCKSTEP_DEMO_HOST` when it must listen on another interface. Set `LOCKSTEP_DEMO_RESET_TIMEZONE` to another valid IANA time zone when the daily boundary should not use `Europe/Istanbul`. Public demo deployments should replace the default credentials with a password of at least six characters:
49
-
50
-
```bash
51
-
LOCKSTEP_DEMO_PORT=4180 \
52
-
LOCKSTEP_DEMO_USER=preview \
53
-
LOCKSTEP_DEMO_PASSWORD='replace-this-password' \
54
-
npm run demo
55
-
```
56
-
57
-
Run the build-backed HTTP smoke test with:
58
-
59
-
```bash
60
-
npm run demo:smoke
61
-
```
62
-
63
-
The Docker image includes the demo server and exposes port `4175`. Override the normal image command to launch it:
64
-
65
-
```bash
66
-
docker run --rm \
67
-
-p 127.0.0.1:4175:4175 \
68
-
-e LOCKSTEP_DEMO_HOST=0.0.0.0 \
69
-
ghcr.io/caglaryalcin/lockstep:v1.0.0 \
70
-
node demo-server.mjs
71
-
```
72
-
73
-
The normal `npm run serve` and Docker `CMD` paths remain production mode on port `4174`.
74
-
75
-
### External Kubernetes demo pod
76
-
77
-
The same image can run as a dedicated `lockstep-demo` pod, independently from the production deployment. Create its credentials as a Secret, then apply the included single-replica Deployment and Service:
Open `http://127.0.0.1:4175` after the port-forward starts. Point an HTTPS Ingress at the `lockstep-demo` Service when the demo should be public; the ingress must preserve `X-Forwarded-Proto` so the demo session cookie is marked secure.
90
-
91
-
The manifest runs `node demo-server.mjs`, binds the pod to `0.0.0.0:4175`, and probes `/healthz` and `/readyz`. It intentionally uses `replicas: 1` with the `Recreate` strategy because both demo state and sessions are process-local. Do not attach a PVC or scale this deployment horizontally; use a shared store first if multi-replica demo service is ever required.
92
-
93
38
## Docker
94
39
95
40
Run directly from the published image:
@@ -189,8 +134,7 @@ After changing checklist content, rebuild the app so the updated checklist is in
0 commit comments