cyclecad 3.0.0 → 3.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/BILLING-IMPLEMENTATION-SUMMARY.md +425 -0
- package/BILLING-INDEX.md +293 -0
- package/BILLING-INTEGRATION-GUIDE.md +414 -0
- package/COLLABORATION-INDEX.md +440 -0
- package/COLLABORATION-SYSTEM-SUMMARY.md +548 -0
- package/DOCKER-BUILD-MANIFEST.txt +483 -0
- package/DOCKER-FILES-REFERENCE.md +440 -0
- package/DOCKER-INFRASTRUCTURE.md +475 -0
- package/DOCKER-README.md +435 -0
- package/Dockerfile +33 -55
- package/PWA-FILES-CREATED.txt +350 -0
- package/QUICK-START-TESTING.md +126 -0
- package/STEP-IMPORT-QUICKSTART.md +347 -0
- package/STEP-IMPORT-SYSTEM-SUMMARY.md +502 -0
- package/app/css/mobile.css +1074 -0
- package/app/icons/generate-icons.js +203 -0
- package/app/js/billing-ui.js +990 -0
- package/app/js/brep-kernel.js +933 -981
- package/app/js/collab-client.js +750 -0
- package/app/js/mobile-nav.js +623 -0
- package/app/js/mobile-toolbar.js +476 -0
- package/app/js/modules/billing-module.js +724 -0
- package/app/js/modules/step-module-enhanced.js +938 -0
- package/app/js/offline-manager.js +705 -0
- package/app/js/responsive-init.js +360 -0
- package/app/js/touch-handler.js +429 -0
- package/app/manifest.json +211 -0
- package/app/offline.html +508 -0
- package/app/sw.js +571 -0
- package/app/tests/billing-tests.html +779 -0
- package/app/tests/brep-tests.html +980 -0
- package/app/tests/collab-tests.html +743 -0
- package/app/tests/mobile-tests.html +1299 -0
- package/app/tests/pwa-tests.html +1134 -0
- package/app/tests/step-tests.html +1042 -0
- package/app/tests/test-agent-v3.html +719 -0
- package/docker-compose.yml +225 -0
- package/docs/BILLING-HELP.json +260 -0
- package/docs/BILLING-README.md +639 -0
- package/docs/BILLING-TUTORIAL.md +736 -0
- package/docs/BREP-HELP.json +326 -0
- package/docs/BREP-TUTORIAL.md +802 -0
- package/docs/COLLABORATION-HELP.json +228 -0
- package/docs/COLLABORATION-TUTORIAL.md +818 -0
- package/docs/DOCKER-HELP.json +224 -0
- package/docs/DOCKER-TUTORIAL.md +974 -0
- package/docs/MOBILE-HELP.json +243 -0
- package/docs/MOBILE-RESPONSIVE-README.md +378 -0
- package/docs/MOBILE-TUTORIAL.md +747 -0
- package/docs/PWA-HELP.json +228 -0
- package/docs/PWA-README.md +662 -0
- package/docs/PWA-TUTORIAL.md +757 -0
- package/docs/STEP-HELP.json +481 -0
- package/docs/STEP-IMPORT-TUTORIAL.md +824 -0
- package/docs/TESTING-GUIDE.md +528 -0
- package/docs/TESTING-HELP.json +182 -0
- package/fusion-vs-cyclecad.html +1771 -0
- package/nginx.conf +237 -0
- package/package.json +1 -1
- package/server/Dockerfile.converter +51 -0
- package/server/Dockerfile.signaling +28 -0
- package/server/billing-server.js +487 -0
- package/server/converter-enhanced.py +528 -0
- package/server/requirements-converter.txt +29 -0
- package/server/signaling-server.js +801 -0
- package/tests/docker-tests.sh +389 -0
|
@@ -0,0 +1,440 @@
|
|
|
1
|
+
# cycleCAD Docker Files — Reference Guide
|
|
2
|
+
|
|
3
|
+
## Complete File Listing
|
|
4
|
+
|
|
5
|
+
### 1. Core Docker Files (3)
|
|
6
|
+
|
|
7
|
+
#### `Dockerfile` (1.7 KB)
|
|
8
|
+
```
|
|
9
|
+
Location: ~/cyclecad/Dockerfile
|
|
10
|
+
Purpose: Main web application image (nginx-based)
|
|
11
|
+
Uses: Base image nginx:alpine
|
|
12
|
+
Builds: Landing page + CAD app SPA
|
|
13
|
+
Exposes: Port 80 (mapped to 8080 in docker-compose)
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
**Key Components:**
|
|
17
|
+
- ✅ Copy landing page (index.html, screenshot.png, CNAME)
|
|
18
|
+
- ✅ Copy app directory (entire CAD application)
|
|
19
|
+
- ✅ Copy docs directory (if exists)
|
|
20
|
+
- ✅ Copy example directory (optional, for demos)
|
|
21
|
+
- ✅ Include production nginx.conf
|
|
22
|
+
- ✅ Health check: curl /health
|
|
23
|
+
|
|
24
|
+
**Built Size:** ~15 MB
|
|
25
|
+
|
|
26
|
+
#### `server/Dockerfile.converter` (1.5 KB)
|
|
27
|
+
```
|
|
28
|
+
Location: ~/cyclecad/server/Dockerfile.converter
|
|
29
|
+
Purpose: STEP/IGES file conversion service (FastAPI)
|
|
30
|
+
Uses: Base image python:3.11-slim
|
|
31
|
+
Installs: cadquery, pythonocc-core, fastapi, uvicorn
|
|
32
|
+
Exposes: Port 8787
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
**Key Components:**
|
|
36
|
+
- ✅ Install system dependencies (libgl1, libglu1-mesa, etc.)
|
|
37
|
+
- ✅ Install Python dependencies from requirements-converter.txt
|
|
38
|
+
- ✅ Copy converter.py script
|
|
39
|
+
- ✅ Create non-root user (converter:1000)
|
|
40
|
+
- ✅ Health check: curl /health
|
|
41
|
+
- ✅ Start: uvicorn with 2 workers
|
|
42
|
+
|
|
43
|
+
**Built Size:** ~500 MB (large due to OpenCASCADE libs)
|
|
44
|
+
|
|
45
|
+
#### `server/Dockerfile.signaling` (624 B)
|
|
46
|
+
```
|
|
47
|
+
Location: ~/cyclecad/server/Dockerfile.signaling
|
|
48
|
+
Purpose: WebSocket signaling server for real-time collaboration
|
|
49
|
+
Uses: Base image node:20-alpine
|
|
50
|
+
Installs: ws (WebSocket library), express, cors
|
|
51
|
+
Exposes: Port 8788
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
**Key Components:**
|
|
55
|
+
- ✅ Install curl for health checks
|
|
56
|
+
- ✅ Copy package.json and install dependencies
|
|
57
|
+
- ✅ Copy signaling-server.js
|
|
58
|
+
- ✅ Create non-root user (nodejs:1001)
|
|
59
|
+
- ✅ Health check: curl /health
|
|
60
|
+
- ✅ Start: node signaling-server.js
|
|
61
|
+
|
|
62
|
+
**Built Size:** ~250 MB
|
|
63
|
+
|
|
64
|
+
---
|
|
65
|
+
|
|
66
|
+
### 2. Configuration Files (2)
|
|
67
|
+
|
|
68
|
+
#### `nginx.conf` (7.8 KB)
|
|
69
|
+
```
|
|
70
|
+
Location: ~/cyclecad/nginx.conf
|
|
71
|
+
Purpose: Production-grade nginx configuration
|
|
72
|
+
Used by: Copied into main Dockerfile during build
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
**Contents (300+ lines):**
|
|
76
|
+
|
|
77
|
+
1. **Gzip Compression**
|
|
78
|
+
- Level 6 compression
|
|
79
|
+
- 8 content types (text, css, js, json, svg, wasm, etc.)
|
|
80
|
+
- Min length 500 bytes
|
|
81
|
+
|
|
82
|
+
2. **Headers**
|
|
83
|
+
- CORS: Access-Control-Allow-Origin *
|
|
84
|
+
- COOP: Cross-Origin-Opener-Policy same-origin
|
|
85
|
+
- COEP: Cross-Origin-Embedder-Policy require-corp
|
|
86
|
+
- Security: CSP, X-Frame-Options, X-Content-Type-Options
|
|
87
|
+
|
|
88
|
+
3. **Caching Strategy**
|
|
89
|
+
- Static assets (JS/CSS/WASM): 1 year, immutable
|
|
90
|
+
- HTML files: no-cache
|
|
91
|
+
- JSON: 5 minutes
|
|
92
|
+
- Versioned assets: 7 days
|
|
93
|
+
|
|
94
|
+
4. **Routing**
|
|
95
|
+
- Health check: /health → JSON
|
|
96
|
+
- API proxy: /api/* → converter (port 8787)
|
|
97
|
+
- API proxy: /converter/* → converter
|
|
98
|
+
- WebSocket: /ws/* → signaling (port 8788)
|
|
99
|
+
- SPA routing: /app/* → /app/index.html
|
|
100
|
+
|
|
101
|
+
5. **Security**
|
|
102
|
+
- Max upload: 500 MB
|
|
103
|
+
- Hidden files blocked (/.*)
|
|
104
|
+
- Proper MIME types
|
|
105
|
+
|
|
106
|
+
#### `docker-compose.yml` (5.7 KB)
|
|
107
|
+
```
|
|
108
|
+
Location: ~/cyclecad/docker-compose.yml
|
|
109
|
+
Purpose: Multi-service orchestration file
|
|
110
|
+
Used by: docker-compose up/down/ps/logs etc.
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
**Services Defined:**
|
|
114
|
+
1. `cyclecad` (nginx)
|
|
115
|
+
- Port: 8080
|
|
116
|
+
- Memory: 512 MB limit, 256 MB reserved
|
|
117
|
+
- CPU: 2 limit, 0.5 reserved
|
|
118
|
+
- Depends on: converter, signaling
|
|
119
|
+
|
|
120
|
+
2. `converter` (FastAPI)
|
|
121
|
+
- Port: 8787
|
|
122
|
+
- Memory: 4 GB limit, 2 GB reserved
|
|
123
|
+
- CPU: 4 limit, 2 reserved
|
|
124
|
+
- Workers: 2
|
|
125
|
+
|
|
126
|
+
3. `signaling` (Node.js)
|
|
127
|
+
- Port: 8788
|
|
128
|
+
- Memory: 512 MB limit, 256 MB reserved
|
|
129
|
+
- CPU: 1 limit, 0.25 reserved
|
|
130
|
+
|
|
131
|
+
4. `exploreview` (optional, nginx)
|
|
132
|
+
- Port: 3000
|
|
133
|
+
- Enabled with: --profile with-exploreview
|
|
134
|
+
|
|
135
|
+
**Network:**
|
|
136
|
+
- `cyclecad-network` (172.28.0.0/16)
|
|
137
|
+
- Bridge driver (isolated)
|
|
138
|
+
|
|
139
|
+
**Volumes:**
|
|
140
|
+
- None defined (stateless services)
|
|
141
|
+
- Future: db-data, redis-data
|
|
142
|
+
|
|
143
|
+
**Logging:**
|
|
144
|
+
- Driver: json-file
|
|
145
|
+
- Rotation: 10-50 MB per file, 3 files max
|
|
146
|
+
|
|
147
|
+
**Health Checks:**
|
|
148
|
+
- All services: 30s interval, 5-10s timeout
|
|
149
|
+
- Retries: 3 attempts before unhealthy
|
|
150
|
+
|
|
151
|
+
---
|
|
152
|
+
|
|
153
|
+
### 3. Dependency Management (1)
|
|
154
|
+
|
|
155
|
+
#### `server/requirements-converter.txt` (524 B)
|
|
156
|
+
```
|
|
157
|
+
Location: ~/cyclecad/server/requirements-converter.txt
|
|
158
|
+
Purpose: Python package dependencies for converter service
|
|
159
|
+
Used by: Dockerfile.converter during build
|
|
160
|
+
```
|
|
161
|
+
|
|
162
|
+
**Packages (15):**
|
|
163
|
+
- fastapi==0.104.1
|
|
164
|
+
- uvicorn[standard]==0.24.0
|
|
165
|
+
- python-multipart==0.0.6
|
|
166
|
+
- pydantic==2.5.0
|
|
167
|
+
- cadquery==2.4.0
|
|
168
|
+
- OCP==7.7.2.dev0
|
|
169
|
+
- pythonocc-core==7.7.2
|
|
170
|
+
- trimesh==3.24.2
|
|
171
|
+
- pygltflib==1.15.2
|
|
172
|
+
- numpy==1.26.2
|
|
173
|
+
- scipy==1.11.4
|
|
174
|
+
- python-json-logger==2.0.7
|
|
175
|
+
- python-dotenv==1.0.0
|
|
176
|
+
|
|
177
|
+
---
|
|
178
|
+
|
|
179
|
+
### 4. Testing (1)
|
|
180
|
+
|
|
181
|
+
#### `tests/docker-tests.sh` (12 KB)
|
|
182
|
+
```
|
|
183
|
+
Location: ~/cyclecad/tests/docker-tests.sh
|
|
184
|
+
Purpose: End-to-end testing suite (executable bash script)
|
|
185
|
+
Used by: GitHub Actions, manual testing
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
**Permissions:** 755 (executable)
|
|
189
|
+
|
|
190
|
+
**Test Categories:**
|
|
191
|
+
1. Prerequisites (docker-compose, Docker daemon)
|
|
192
|
+
2. Service startup (3+ services running)
|
|
193
|
+
3. Health checks (all endpoints respond)
|
|
194
|
+
4. cycleCAD app (/, /app/, /health, headers, caching)
|
|
195
|
+
5. Converter (health, API docs, upload, conversion)
|
|
196
|
+
6. Signaling (health, WebSocket)
|
|
197
|
+
7. Docker config (limits, checks, networking)
|
|
198
|
+
8. Integration (cross-service, file limits)
|
|
199
|
+
9. Cleanup (stop/restart operations)
|
|
200
|
+
|
|
201
|
+
**Total Tests:** 30+
|
|
202
|
+
|
|
203
|
+
**Output Format:**
|
|
204
|
+
- Color-coded: Green (pass), Red (fail), Yellow (skip), Blue (info)
|
|
205
|
+
- Summary: Tests passed/failed/skipped, pass rate %
|
|
206
|
+
- Exit code: 0 (all pass), 1 (any fail)
|
|
207
|
+
|
|
208
|
+
---
|
|
209
|
+
|
|
210
|
+
### 5. CI/CD Pipeline (1)
|
|
211
|
+
|
|
212
|
+
#### `.github/workflows/docker-test.yml` (11 KB)
|
|
213
|
+
```
|
|
214
|
+
Location: ~/cyclecad/.github/workflows/docker-test.yml
|
|
215
|
+
Purpose: GitHub Actions workflow for automated testing/publishing
|
|
216
|
+
Used by: GitHub Actions on push/PR events
|
|
217
|
+
```
|
|
218
|
+
|
|
219
|
+
**Triggers:**
|
|
220
|
+
- Push to main or develop
|
|
221
|
+
- Pull request to main
|
|
222
|
+
- Changes to Docker/app files
|
|
223
|
+
|
|
224
|
+
**Jobs:**
|
|
225
|
+
1. **build-and-test** (30 min timeout)
|
|
226
|
+
- Checkout, setup Buildx, cache layers
|
|
227
|
+
- Build images
|
|
228
|
+
- Start services
|
|
229
|
+
- Wait for health checks
|
|
230
|
+
- Run docker-tests.sh
|
|
231
|
+
- Upload logs as artifacts
|
|
232
|
+
- Cleanup
|
|
233
|
+
|
|
234
|
+
2. **publish** (on main push, if tests pass)
|
|
235
|
+
- Login to Docker Hub
|
|
236
|
+
- Login to GitHub Container Registry
|
|
237
|
+
- Build and push 3 images
|
|
238
|
+
- Tag with version, latest, SHA
|
|
239
|
+
|
|
240
|
+
3. **deploy** (optional, if credentials)
|
|
241
|
+
- SSH to VPS
|
|
242
|
+
- Pull new images
|
|
243
|
+
- Restart services
|
|
244
|
+
|
|
245
|
+
4. **notify** (always)
|
|
246
|
+
- Report status
|
|
247
|
+
- Send webhook notification
|
|
248
|
+
|
|
249
|
+
---
|
|
250
|
+
|
|
251
|
+
### 6. Documentation (4)
|
|
252
|
+
|
|
253
|
+
#### `DOCKER-README.md` (14 KB)
|
|
254
|
+
```
|
|
255
|
+
Location: ~/cyclecad/DOCKER-README.md
|
|
256
|
+
Purpose: Quick reference and getting started guide
|
|
257
|
+
Audience: Developers, DevOps engineers
|
|
258
|
+
```
|
|
259
|
+
|
|
260
|
+
**Sections:**
|
|
261
|
+
- Overview
|
|
262
|
+
- Quick start (5 steps)
|
|
263
|
+
- Architecture diagram
|
|
264
|
+
- File structure
|
|
265
|
+
- Key files explanation
|
|
266
|
+
- Commands reference
|
|
267
|
+
- Documentation links
|
|
268
|
+
- Deployment strategies
|
|
269
|
+
- Troubleshooting
|
|
270
|
+
- Performance tips
|
|
271
|
+
- Security
|
|
272
|
+
- CI/CD info
|
|
273
|
+
- Future enhancements
|
|
274
|
+
|
|
275
|
+
**Usage:** Start here for overview and quick commands.
|
|
276
|
+
|
|
277
|
+
#### `docs/DOCKER-TUTORIAL.md` (19 KB, 600+ lines)
|
|
278
|
+
```
|
|
279
|
+
Location: ~/cyclecad/docs/DOCKER-TUTORIAL.md
|
|
280
|
+
Purpose: Comprehensive guide covering all Docker operations
|
|
281
|
+
Audience: All users, from beginners to DevOps
|
|
282
|
+
```
|
|
283
|
+
|
|
284
|
+
**Sections (13):**
|
|
285
|
+
1. Overview
|
|
286
|
+
2. Quick Start (prerequisites, installation, verification)
|
|
287
|
+
3. Service Architecture (detailed for each service)
|
|
288
|
+
4. Building Images (build commands, caching)
|
|
289
|
+
5. Running Services (start, logs, exec, stop, restart)
|
|
290
|
+
6. Environment Configuration (.env file, variables)
|
|
291
|
+
7. Development Workflow (hot reload, testing)
|
|
292
|
+
8. Production Deployment (VPS, AWS, Kubernetes)
|
|
293
|
+
9. SSL/TLS with Let's Encrypt (automatic HTTPS)
|
|
294
|
+
10. Scaling & Performance (horizontal/vertical)
|
|
295
|
+
11. Monitoring & Logging (real-time, centralized)
|
|
296
|
+
12. Troubleshooting (7 detailed scenarios)
|
|
297
|
+
13. CI/CD Pipeline (GitHub Actions setup)
|
|
298
|
+
|
|
299
|
+
**Usage:** Complete reference for all Docker operations.
|
|
300
|
+
|
|
301
|
+
#### `docs/DOCKER-HELP.json` (7.4 KB)
|
|
302
|
+
```
|
|
303
|
+
Location: ~/cyclecad/docs/DOCKER-HELP.json
|
|
304
|
+
Purpose: Structured help entries for CLI integration
|
|
305
|
+
Format: JSON
|
|
306
|
+
```
|
|
307
|
+
|
|
308
|
+
**Structure:**
|
|
309
|
+
- 15+ help entries
|
|
310
|
+
- Each entry has: id, title, category, description, commands, example, output
|
|
311
|
+
- 5 tips with categories
|
|
312
|
+
- Searchable for integration with CLI tools or IDEs
|
|
313
|
+
|
|
314
|
+
**Entries:**
|
|
315
|
+
- docker-start, docker-stop
|
|
316
|
+
- docker-logs, docker-status, docker-health
|
|
317
|
+
- docker-exec, docker-build
|
|
318
|
+
- docker-step-convert, docker-converter-api
|
|
319
|
+
- docker-restart, docker-env, docker-volume
|
|
320
|
+
- docker-cleanup, docker-logs-persistent
|
|
321
|
+
- docker-profile, docker-network
|
|
322
|
+
|
|
323
|
+
**Usage:** Integrate with CLI autocomplete or help systems.
|
|
324
|
+
|
|
325
|
+
#### `DOCKER-INFRASTRUCTURE.md` (This file, ~100 KB)
|
|
326
|
+
```
|
|
327
|
+
Location: ~/cyclecad/DOCKER-INFRASTRUCTURE.md
|
|
328
|
+
Purpose: Complete build summary and file manifest
|
|
329
|
+
Audience: Project leads, documentation, archival
|
|
330
|
+
```
|
|
331
|
+
|
|
332
|
+
**Contents:**
|
|
333
|
+
- What was built (overview)
|
|
334
|
+
- File manifest
|
|
335
|
+
- Quick start copy-paste
|
|
336
|
+
- Key features (architecture, performance, security)
|
|
337
|
+
- Deployment paths
|
|
338
|
+
- Success metrics
|
|
339
|
+
- Next steps
|
|
340
|
+
- Commands reference
|
|
341
|
+
- Support info
|
|
342
|
+
- Version history
|
|
343
|
+
|
|
344
|
+
**Usage:** Project documentation and reference.
|
|
345
|
+
|
|
346
|
+
---
|
|
347
|
+
|
|
348
|
+
## File Relationships
|
|
349
|
+
|
|
350
|
+
```
|
|
351
|
+
docker-compose.yml
|
|
352
|
+
├── Dockerfile (builds cyclecad image)
|
|
353
|
+
│ └── nginx.conf (copied into image)
|
|
354
|
+
│
|
|
355
|
+
├── server/Dockerfile.converter (builds converter image)
|
|
356
|
+
│ └── server/requirements-converter.txt
|
|
357
|
+
│
|
|
358
|
+
├── server/Dockerfile.signaling (builds signaling image)
|
|
359
|
+
│ └── server/package.json (referenced, auto-created if missing)
|
|
360
|
+
│
|
|
361
|
+
└── .github/workflows/docker-test.yml (CI/CD)
|
|
362
|
+
├── tests/docker-tests.sh (runs tests)
|
|
363
|
+
│ └── docker-compose commands (uses docker-compose.yml)
|
|
364
|
+
│
|
|
365
|
+
└── Docker build/push commands (uses Dockerfiles)
|
|
366
|
+
```
|
|
367
|
+
|
|
368
|
+
---
|
|
369
|
+
|
|
370
|
+
## Size Summary
|
|
371
|
+
|
|
372
|
+
| File | Size | Type |
|
|
373
|
+
|------|------|------|
|
|
374
|
+
| Dockerfile | 1.7 KB | Configuration |
|
|
375
|
+
| server/Dockerfile.converter | 1.5 KB | Configuration |
|
|
376
|
+
| server/Dockerfile.signaling | 624 B | Configuration |
|
|
377
|
+
| nginx.conf | 7.8 KB | Configuration |
|
|
378
|
+
| docker-compose.yml | 5.7 KB | Configuration |
|
|
379
|
+
| server/requirements-converter.txt | 524 B | Dependency |
|
|
380
|
+
| tests/docker-tests.sh | 12 KB | Script |
|
|
381
|
+
| .github/workflows/docker-test.yml | 11 KB | Configuration |
|
|
382
|
+
| DOCKER-README.md | 14 KB | Documentation |
|
|
383
|
+
| docs/DOCKER-TUTORIAL.md | 19 KB | Documentation |
|
|
384
|
+
| docs/DOCKER-HELP.json | 7.4 KB | Reference |
|
|
385
|
+
| DOCKER-INFRASTRUCTURE.md | (this) | Documentation |
|
|
386
|
+
| **TOTAL** | **~110 KB** | **Code + Docs** |
|
|
387
|
+
|
|
388
|
+
---
|
|
389
|
+
|
|
390
|
+
## Image Build Sizes
|
|
391
|
+
|
|
392
|
+
| Image | Base | Size | Services |
|
|
393
|
+
|-------|------|------|----------|
|
|
394
|
+
| cyclecad | nginx:alpine | 15 MB | Web app (port 8080) |
|
|
395
|
+
| cyclecad-converter | python:3.11-slim | 500 MB | STEP converter (port 8787) |
|
|
396
|
+
| cyclecad-signaling | node:20-alpine | 250 MB | WebSocket (port 8788) |
|
|
397
|
+
| **Total** | — | **765 MB** | **3 services** |
|
|
398
|
+
|
|
399
|
+
---
|
|
400
|
+
|
|
401
|
+
## Getting Started
|
|
402
|
+
|
|
403
|
+
**Step 1: Review Files**
|
|
404
|
+
1. Read DOCKER-README.md (10 min)
|
|
405
|
+
2. Skim DOCKER-INFRASTRUCTURE.md (5 min)
|
|
406
|
+
|
|
407
|
+
**Step 2: Start Services**
|
|
408
|
+
```bash
|
|
409
|
+
cd ~/cyclecad
|
|
410
|
+
docker-compose up -d
|
|
411
|
+
docker-compose ps
|
|
412
|
+
```
|
|
413
|
+
|
|
414
|
+
**Step 3: Test**
|
|
415
|
+
```bash
|
|
416
|
+
bash tests/docker-tests.sh
|
|
417
|
+
```
|
|
418
|
+
|
|
419
|
+
**Step 4: Access Apps**
|
|
420
|
+
- cycleCAD: http://localhost:8080
|
|
421
|
+
- Converter API: http://localhost:8787/docs
|
|
422
|
+
- Signaling: ws://localhost:8788
|
|
423
|
+
|
|
424
|
+
**Step 5: Learn More**
|
|
425
|
+
- Command reference: DOCKER-README.md
|
|
426
|
+
- Detailed guide: docs/DOCKER-TUTORIAL.md
|
|
427
|
+
- Help entries: docs/DOCKER-HELP.json
|
|
428
|
+
|
|
429
|
+
---
|
|
430
|
+
|
|
431
|
+
## Support
|
|
432
|
+
|
|
433
|
+
- **Issues**: https://github.com/vvlars-cmd/cyclecad/issues
|
|
434
|
+
- **Docs**: All files in this directory
|
|
435
|
+
- **Contact**: vvlars@googlemail.com
|
|
436
|
+
|
|
437
|
+
---
|
|
438
|
+
|
|
439
|
+
Generated: 2026-03-31
|
|
440
|
+
Version: 0.8.6
|