compose:
- MinIOにヘルスチェック(mc ready)を追加し、api/workerはhealthyを待つように変更
- 全認証情報を${VAR:-default}でパラメータ化し、Coolifyの環境変数/シークレットで上書き可能に
- MINIO_SERVER_URL / MINIO_BROWSER_REDIRECT_URL でリバースプロキシ背後の公開URLに対応
- workerの依存先をapiからpostgres+minioに修正し、起動順序のデッドロックを解消
API:
- S3StorageにensureBucket()を追加(HeadBucket→なければCreateBucket、冪等)
- runtime起動時にbucketを自動作成し、minio-init依存を必須ではなくした
.env.exampleにMinIO関連変数を追記
AltDock
AltDock is a self-hostable, multi-tenant hosting service for AltStore PAL Alternative Distribution Packages (ADPs). Upload the original ADP ZIP, validate its manifest and asset set, then publish a PAL-compatible Source JSON URL.
Run locally without Docker
npm install
cp .env.example .env
npm run dev:api
With no DATABASE_URL, the API uses an in-memory store and local files under
.data/storage. Open the web app in another terminal:
npm run dev
The dashboard is at http://localhost:3000 and the API is at
http://localhost:4000.
Run the full stack
docker compose up
This starts PostgreSQL, MinIO, the API, the ADP worker, and the web app. The
MinIO console is available at http://localhost:9001 with the credentials in
docker-compose.yml.
Production identity
Set AUTH_MODE=oidc and configure OIDC_ISSUER_URL, OIDC_CLIENT_ID,
OIDC_CLIENT_SECRET, OIDC_REDIRECT_URI, and a random SESSION_SECRET. The
demo mode is intentionally enabled by default for local development only.
ADP workflow
- Submit the app for Notarization and download the completed ADP ZIP.
- Upload the original ZIP to AltDock; do not prettify or rewrite its files.
- Review the parsed bundle ID, Apple Item ID, version, build, and asset paths.
- Publish the release and copy the Source URL into AltStore PAL.
Published artifacts are served at /artifacts/{releaseId}/{relativePath} and
the Source JSON is served at /sources/{slug}/source.json.
Checks
npm run lint
npm test