Self-hosted media streaming server with a Go backend, React web UI, Docker deployment, transcoding, and Jellyfin-compatible APIs.
翻譯準備中
媒體Go · TypeScriptGitHub @Silo-Server自行安裝營運者未確認
試用過了嗎? 點一下就好,不需要登入。
尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
安裝型專案無需部署網域也可驗證。個人儲存庫可透過 GitHub 登入驗證,組織儲存庫可使用上方的儲存庫驗證檔案。
製作者的介紹僅有上面的一句話。 更多詳情請閱讀儲存庫 README。 儲存庫 README ↗
正在載入完整 README。
檢視完整 README ↗[!WARNING] Silo is pre-release. APIs, configuration, and database migrations may change before the first stable release. Back up your deployment before updating.
The 1.0 milestone covers movies and series. Audiobooks, ebooks, and Audiobookshelf compatibility keep working as they do today and are labeled beta: they are outside the 1.0 support promise and will be replaced by a consolidated Books effort with no assigned release date. The broader capabilities below include those beta implementations, not a promise that every media type is supported in 1.0. Existing library data is preserved when upgrading.
Requires Docker Compose 2.24 or newer. The default Compose file runs the omnibus image: Silo with a bundled PostgreSQL (with pgvector) and Redis, plus Meilisearch when you turn it on.
git clone https://github.com/Silo-Server/silo-server.git
cd silo-server
cp .env.example .env
chmod 600 .env
key="$(openssl rand -base64 48)" && printf '\nSECRET_KEY=%s\n' "$key" >> .env
Set MEDIA_ROOT in .env to the absolute path of your media, then:
docker compose up -d
Open http://localhost:8090 and complete onboarding.
An install from before the omnibus image moves to it on the first
docker compose up -d with this Compose file. Its earlier data directories stay
in place until you delete them. Remove any docker-compose.override.yml
entries for the old postgres, redis, or meilisearch services first. The
earlier stack ran Silo as root; the omnibus image runs it as PUID (default
1000), so set PUID and PGID in .env to an account that can read
MEDIA_ROOT. If its
.env sets SILO_SEARCH_PROVIDER,
SILO_MEILISEARCH_URL, or SILO_MEILISEARCH_API_KEY for the separate
Meilisearch service, remove them and set ENABLE_MEILISEARCH=true to use the
bundled one.
The user manual covers the rest, starting with
installation: backing up SECRET_KEY,
storage, GPU acceleration, Meilisearch, external PostgreSQL and Redis,
transcode nodes, PostgreSQL tuning, backups, and updates.
Until the first release, default-branch images carry an ordered build-N tag
and the full commit SHA alongside latest. Build numbers order published images;
they are not release versions. Release versioning
defines each tag and the SemVer contract.
Questions and discussion: Discord. Bugs, install problems, and performance issues: the GitHub issue forms, which ask for reproduction steps and raw logs.
Native clients are developed in
silo-apple and
silo-android. Client-visible
API, authentication, playback, or metadata changes should consider both.
Right now, the most helpful way to contribute is a clear, accurate issue. We implement and review changes through our own workflow, and pull request volume has outgrown what we can review carefully, so a good issue usually helps us more than a pull request.
Pull requests are still welcome from contributors who've had one merged in a Silo repository, or when a maintainer asks for one. We close other pull requests without review. CONTRIBUTING.md explains what makes an issue useful.
Silo is developed in spare time and funded out of pocket, and will stay free and open source. GitHub Sponsors covers AI development tooling (Claude, Codex), push-notification relay infrastructure, and future project costs. Bug reports, code, and documentation help just as much.
Code review is supported by Macroscope through its open source program.
Silo's source code is licensed under the
GNU Affero General Public License v3.0 or later (AGPL-3.0-or-later). See
LICENSE.
The Silo name, logo, and wordmark are trademarks of Silo Media L.L.C. and are not covered by the AGPL. Forks and redistributions may use the code but must not use the Silo brand as their identity and must remove or replace the brand assets. Publishing a Silo-branded app to an app store requires written permission. See TRADEMARK.md for permitted referential use, including phrases such as "compatible with Silo."