mirror of
https://github.com/azaion/gps-denied-onboard.git
synced 2026-06-22 22:01:14 +00:00
1f634c2604
ci/woodpecker/push/02-build-push Pipeline failed
- Modified the autodev state to reflect the current testing phase and details of the new `jetson-e2e` tests. - Enhanced the "How to Test" documentation to provide clearer instructions on the demo replay validation process, including video and tlog alignment steps. - Updated architectural documentation to include the new demo replay operator flow and its dependencies. - Documented the removal of deprecated auto-sync features and clarified the operator-facing UI for replay validation. - Added new entries in the dependencies table for upcoming tasks related to the demo replay flow. These changes improve clarity and usability for operators and developers working with the demo replay system.
95 lines
2.0 KiB
Markdown
95 lines
2.0 KiB
Markdown
# Containerization Plan Template
|
|
|
|
Save as `_docs/04_deploy/containerization.md`.
|
|
|
|
---
|
|
|
|
```markdown
|
|
# [System Name] — Containerization
|
|
|
|
## Component Dockerfiles
|
|
|
|
### [Component Name]
|
|
|
|
| Property | Value |
|
|
|----------|-------|
|
|
| Base image | [e.g., mcr.microsoft.com/dotnet/aspnet:8.0-alpine] |
|
|
| Build image | [e.g., mcr.microsoft.com/dotnet/sdk:8.0-alpine] |
|
|
| Stages | [dependency install → build → production] |
|
|
| User | [non-root user name] |
|
|
| Health check | [endpoint and command] |
|
|
| Exposed ports | [port list] |
|
|
| Key build args | [if any] |
|
|
|
|
### [Repeat for each component]
|
|
|
|
## Docker Compose — Local Development
|
|
|
|
```yaml
|
|
# docker-compose.yml structure
|
|
services:
|
|
[component]:
|
|
build: ./[path]
|
|
ports: ["host:container"]
|
|
environment: [reference .env.dev]
|
|
depends_on: [dependencies with health condition]
|
|
healthcheck: [command, interval, timeout, retries]
|
|
|
|
db:
|
|
image: [postgres:version-alpine]
|
|
volumes: [named volume]
|
|
environment: [credentials from .env.dev]
|
|
healthcheck: [pg_isready]
|
|
|
|
volumes:
|
|
[named volumes]
|
|
|
|
networks:
|
|
[shared network]
|
|
```
|
|
|
|
## Docker Compose — Blackbox Tests
|
|
|
|
```yaml
|
|
# docker-compose.test.yml structure
|
|
services:
|
|
[app components under test]
|
|
|
|
test-runner:
|
|
build: ./tests/integration
|
|
depends_on: [app components with health condition]
|
|
environment: [test configuration]
|
|
# Exit code determines test pass/fail
|
|
|
|
db:
|
|
image: [postgres:version-alpine]
|
|
volumes: [seed data mount]
|
|
```
|
|
|
|
Run: `docker compose -f docker-compose.test.yml up --abort-on-container-exit`
|
|
|
|
## Image Tagging Strategy
|
|
|
|
| Context | Tag Format | Example |
|
|
|---------|-----------|---------|
|
|
| CI build | `<registry>/<project>/<component>:<git-sha>` | `ghcr.io/org/api:a1b2c3d` |
|
|
| Release | `<registry>/<project>/<component>:<semver>` | `ghcr.io/org/api:1.2.0` |
|
|
| Local dev | `<component>:latest` | `api:latest` |
|
|
|
|
## .dockerignore
|
|
|
|
```
|
|
.git
|
|
.cursor
|
|
_docs
|
|
_standalone
|
|
node_modules
|
|
**/bin
|
|
**/obj
|
|
**/__pycache__
|
|
*.md
|
|
.env*
|
|
docker-compose*.yml
|
|
```
|
|
```
|