Docker: minimal batch container with safe volumes and Compose example

Open
#203 3 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
22/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Active
Tech stack
docker, rust
Domain
devops, security

Research direction

The issue names no existing Dockerfile or source file, so first document the current state as it asks, then check the Cargo feature flags for a CLI build without the API (--no-default-features, --locked). Work is gated on DK-01 and on an approved architecture plan, and the three comments may hold the discussion that decides scope. Done means an approved plan and one reviewed PR with green CI, batch-mode encryption tests, and a documented rollback.

Written by the indexing model from the issue text.

Description

area:docker priority:P3 type:feature

Ziel und Umfang

Multi-Stage-Build mit gepinnten Basis-Images; cargo build --release --locked --no-default-features für CLI ohne API; nicht privilegierter UID/GID, read-only RootFS, keine eingebetteten privaten Schlüssel/Token, noninteractive --batch nur nach CLI-Verifikation. Netzwerk beim Aufruf explizit --network none; keine Ports/Health-API. Kein automatisches --no-sandbox.

Priorität und Abhängigkeiten

  • Priorität: P1
  • Vorbedingungen: DK-01 (DK-Referenzen sind Titel dieser Reihe; nach Erstellung durch konkrete Issue-Links auflösbar)
  • Phase: A – lokaler Containerbetrieb

Sicherheitsregeln

  • Vor Umsetzung Ist-Zustand, betroffene Dateien, Architektur und Risiken dokumentieren; Freigabe einholen.
  • Ein kleiner, eigenständig reviewbarer PR; keine ungeplanten Refactorings.
  • Kein offener Netzwerkport, keine automatische Remote-Freigabe, kein stiller unsicherer Fallback.
  • Keine privaten Schlüssel, Passphrasen oder Tokens in Images, Logs, CLI-Argumenten oder Build-Layern.
  • Windows-/Debian-/ARM64-Pakete, bestehende CLI/API, Schlüsselcontainer und .pqkf v1/v2 bleiben kompatibel.

Tests und Akzeptanzkriterien

Public-Key-ML-KEM-Verschlüsselung als Batch erfolgreich; .pqkf außerhalb persistent; API-Code nicht einkompiliert; keine TCP/UDP-Sockets, kein Root, keine geheimen Build-Artefakte; Fehler erzeugen kein veröffentlichtes Teilarchiv.

  • Positiv-, Negativ-, Manipulations-, Fehler-/Abbruch- und Regressionstests passend zum Scope dokumentiert und grün.
  • CI: fmt, clippy, tests, Security-/Dependency-Checks; Zielplattformen soweit einschlägig.
  • Dokumentation und Bedrohungsmodell auf Deutsch und Englisch aktualisiert.

Definition of Done

  • Architektur-/Implementierungsplan vor Änderung freigegeben.
  • Genau ein unabhängiger PR mit Review und grüner CI.
  • Bestehende Daten und Installationswege nachweislich nutzbar.
  • Rollback getestet; Release-Notes und Einschränkungen dokumentiert.

Rollback

Image entfernen/auf voriges Tag zurücksetzen; Host-Pakete unverändert.

Reihe: DK-02 von 12. Verwandt: #95, #104; Docker ist ergänzend zu bestehenden Core-/Daemon-Issues, kein Ersatz.

Dominant language
Rust
Stars
0
Forks
0
Avg merge
1h 22m
Merged PRs (30d)
72

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from SpecterAoD/pqkeep

All issues in SpecterAoD/pqkeep

Similar issues

More Rust issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.