ByteBite Docs
Infrastructure

Object Storage

MinIO local development, planned Backblaze B2 production storage.

Object Storage

ByteBite uses an S3-compatible abstraction for uploaded media (restaurant logos, category/menu imagery, and other assets). ADR-018 defines the provider split.

Current state

EnvironmentProviderStatus
Local devMinIO (minio/minio in compose.yml)Active
StagingNot deployed
ProductionBackblaze B2 (planned)Not deployed

Local development (MinIO)

SettingValue
Containerminio in compose.yml
API endpoint (inside Docker)http://minio:9000
Consolehttp://localhost:9001 (host-published)
Default bucketbytebite (from .env.example)
CredentialsLocal dev placeholders in .env.example — not production secrets

The API container receives S3_ENDPOINT=http://minio:9000 via Compose override regardless of host .env values.

Planned production (Backblaze B2)

AspectStatus
Provider decisionAccepted (ADR-018)
Bucket namesNot established
CredentialsNot configured
Application wiringPlaceholders in .env.example only
Staging object storageNot deployed

Likely consumers

When implemented, object storage will serve:

  • Restaurant logos (restaurants.logo_url)
  • Category and menu item imagery
  • Other uploaded media assets

Exact bucket layout and CDN strategy are not yet defined.

On this page