Initial container images

Description

Bootstrap the Oniomages project.

This can be useful for the community and also serve base images for other projects (such as Onionprobe and Oniongroove).

Tasks

  • C Tor image (from the existing Onionprobe configuration):
    • Dockerfile.
    • Default configuration.
    • Debian packaging (keys etc)
  • Arti image (from the existing Oniongroove configuration):
    • Dockerfile.
    • Default configuration.
    • Disable SOCKS proxy.
  • Building:
    • CI (build and publish).
    • Docker Compose (from both Onionprobe and Oniongroove).
    • Setup scheduled builds.
    • Building Debian image variants.
    • Build an Alpine C Tor image variant.
    • Build an Alpine Arti image variant, handled at #2 (closed).
    • Custom HTTP backend server image.
  • Testing:
    • Ensure CI is working.
    • Test the C Tor images (Debian stable and alpine).
    • Test the Arti image for Debian.
    • Test the Arti image for Alpine, handled at #2 (closed).
    • Do a final test.
  • Documenting:
    • What it is.
    • How to use (C Tor).
    • How to use (Arti), including the current limitation, ref. tpo/core/arti#1921.
    • Customization:
      • C Tor.
      • Arti.
    • How to contribute and ask for support.
  • Announcing:
    • Make the 0.1.0 release.
    • Dedicated forum post (stating that this project is still experimental, asking for feedback). Done here.
    • Replying this forum post (making the same abovementioned remarks).
    • Document in the Ecosystem docs:
    • Loop Pavel about this (pointing to the blog post).
    • Add a comment on tpo/core/arti#1904, pointing to the Onimages project and suggesting that a base Rust container on the base-images repository, ready for the cargo install, could be a good starting point, which would also be useful for other projects.
  • Organize:
    • Create tickets/tasks in other projects that could use these base images.
    • Create ticket/merge request at base-images, asking/implementing a base Rust container, ready for the cargo install, useful for the arti container and other projects (check related task above). Moved to #4.
    • Create ticket to update the latest tag on Debian images pointing to trixie, once it's released, then create a ticket for the next stable release (setting due dates so we can track this properly). Done: #5 (closed).
    • Create ticket for reproducible builds, for Arti and C Tor. Done: #3.

Time estimation

  • Complexity: very small (0.5 day)
  • Uncertainty: low (x1.1)
  • Reference (adapted)
Edited by Silvio Rhatto