Skip to content

[synkronus] Update CI to build multiplatform OCI images using podman #580

Description

@r0ssing

Component

  • formulus (React Native mobile app)
  • formulus-formplayer (React web app)
  • synkronus (Go backend server)
  • synkronus-cli (Command-line utility)
  • Documentation
  • Other (please specify)

Feature Description

This issue covers two related improvements:

  1. Add multi-platform (multi-arch) Docker/OCI images
  2. Replace Docker-based builds with Podman-based builds

Currently, images are only published for linux/amd64, and ARM users must build locally.

Problem Statement

  • ARM is now common (Apple Silicon, Raspberry Pi, servers)
  • Users cannot simply podman pull (or docker pull) and run
  • Local builds add friction and setup time
  • Current build pipeline depends on Docker rather than a fully FOSS toolchain

Proposed Solution

  1. Publish multi-platform images for:

    • linux/amd64
    • linux/arm64
  2. Switch build pipeline from Docker to Podman

    • Use Podman/Buildah for building images
    • Continue publishing standard OCI images to registry (e.g. GHCR)

Result:

  • Users can podman pull (or docker pull) and get the correct image automatically
  • No manual builds needed for ARM
  • Build pipeline aligns with FOSS principles

Additional Context

  • Multi-platform images are standard practice
  • Podman is a daemonless, fully open-source alternative to Docker
  • OCI images remain fully compatible with Docker and other runtimes

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestgood first issueGood for newcomersinfrastructureIssues related to CI/CD, Docker, deployment, or infrastructure setupvNextMinor"vNextMinor" would currently mean for example v1.1.0

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions