Coolifyの公開ドメイン(altdock.app.amania.jp)がvite 8のHostチェックで 403 Blocked requestになるため、VITE_ALLOWED_HOSTSで許可ホストを 環境変数から設定できるようにした。composeのデフォルトは altdock.app.amania.jp、カンマ区切り複数対応、* で全許可。
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