Spaces:
Sleeping
Sleeping
Commit History
-
Add deployable opencode server image for HF Spaces and Railway
One Dockerfile serving both hosts. entrypoint.sh resolves the port at runtime ($PORT on Railway, 7860 to match app_port on HF Spaces), detects a writable /data mount and points the XDG dirs and workspace at it so sessions, provider logins and code survive restarts, and refuses to start without OPENCODE_SERVER_PASSWORD — every route on this server allows shell execution, so basic auth is not optional on a public URL. opencode is installed at build time rather than on first boot, since a free Space's filesystem is ephemeral and would otherwise re-download the release on every cold start. The installer hardcodes $HOME/.opencode/bin and ignores OPENCODE_INSTALL_DIR, so the binary is moved onto the shared PATH afterwards. The node images already ship a uid-1000 user, which is what HF Spaces requires, so `node` is reused instead of adding a colliding one. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>5bd2d41