Skip to content

Add one-command installer and dual-registry image publishing #32

Description

@fengren

Background

Devify needs a frictionless way for users to install and upgrade the product, and images must be reachable from more than one registry so distribution doesn't depend on a single ACR namespace.

Scope

One-command installer (install.sh)

  • curl ... | sudo bash style install, Docker Compose based, never clones the Git repo
  • Downloads version-consistent release artifacts (devify-<version>.tar.gz + optional .sha256)
  • Supports github (ghcr.io / GitHub Releases) and cn (ACR / OSS-CDN) channels with auto-detect
  • Idempotent re-run / upgrade; preserves user config and data
  • Preflight checks (root, OS/arch, memory, disk, Docker/Compose), port resolution, env generation, certs, health check and install info
  • Interactive and non-interactive (-y) modes with extensive DEVIFY_* env overrides

Dual-registry publishing (.github/workflows/build_and_deploy.yml)

  • On release (v* tag), push devify and devify-ui images to both the current REGISTRY and registry.cn-beijing.aliyuncs.com/oneprolabs
  • Same tags (version / major.minor / major / latest) on both registries; oneprolabs reuses REGISTRY_USERNAME / REGISTRY_PASSWORD for login

Acceptance

  • Installer works end-to-end on a clean host via the cn channel
  • Installer supports github channel fallback
  • Release pipeline pushes identical tags to both registries
  • Installer re-run is safe (idempotent, config/data preserved)

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions