Skip to content

Epic: Upstream riscv64 contributions for all Docker stack components #342

@gounthar

Description

@gounthar

Context

The RISE Developers Appreciation Program rejected our Docker fork submission because the program rewards upstream contributions, not fork work. The maintainer's feedback:

We unfortunately do not accept contributions to forks. [...] If any OSS project that Docker depends on requires changes for riscv64, and these are open to contributions upstream, these are good projects to contribute to and we would be very happy to reward these contributions.

This epic tracks upstream contribution opportunities for each component in our Docker riscv64 stack.

Components & Upstream Status

Verified: Already shipping riscv64 upstream (2026-03-12)

These components already include riscv64 in their official release artifacts — no contribution needed:

  • runc — ships runc.riscv64 since v1.1.8
  • containerd — ships containerd-*-linux-riscv64.tar.gz since v2.2.2
  • BuildKit — ships buildkit-*-linux-riscv64.tar.gz since v0.28.0
  • BuildX — ships buildx-*.linux-riscv64 since v0.32.1
  • Docker Compose — ships docker-compose-linux-riscv64 since v5.1.0

Issues filed on these repos were closed after verification.

In progress

Not a candidate

  • Docker Agent (cagent) — internal Docker Inc. tooling

Strategy

Priority Order

  1. Easiest wins → Discovered 5/8 already ship riscv64 ✅
  2. Docker CLI → PR submitted, awaiting review
  3. Moby → Next PR target (three-line docker-bake.hcl change)
  4. Tini → Wait for maintainer response before investing effort

For Each Component

  1. Check if riscv64 issue already exists upstream ✅ Done (2026-03-12)
  2. Fork if not already done ✅ Done (2026-03-12)
  3. Create branch with minimal changes (CI config, Dockerfile platform list)
  4. Test on BananaPi F3, document results
  5. Open upstream PR with test evidence

Evidence to Provide

Each upstream PR should include:

  • Build logs from native riscv64 hardware
  • Test results (unit tests, integration tests)
  • Binary size and basic functionality verification
  • Hardware used (BananaPi F3, SpacemiT K1, rv64gc)

Already Done

Related

Metadata

Metadata

Assignees

No one assigned

    Labels

    epicLarge initiative with multiple sub-tasksupstreamRelated to upstream contribution

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions