mirror of
https://github.com/pgsty/minio.git
synced 2026-08-10 00:03:29 +03:00
fd2ca1c6d2
README, README_ZH, SECURITY, COMPLIANCE, CONTRIBUTING, NOTICE, code_of_conduct, the vulnerability and PR-etiquette documents, the GitHub issue and pull request templates, and the docs/ tree all present Silo as the product. The Grafana dashboards under docs/metrics/prometheus/grafana/ have their panel titles and descriptions rebranded while every minio_* query, label and expression is left alone, so existing alerts and recording rules keep matching. The distinction the review demanded is applied per hit rather than by search-and-replace: - Product and command text becomes Silo and silo: install and run instructions, systemd examples, compose services, download links, badges. - Protocol and interface text keeps MinIO: MINIO_* variables, minio_* metrics, x-minio-* headers, /minio/* routes, .minio.sys, arn:minio, and API field and error names. - Attribution keeps MinIO and gains the fork's own: the AGPL obligations, original copyright, CREDITS and NOTICE stay, with the modification notice added alongside rather than replacing them. - Historical and third-party references are left as facts, not rewritten for brand tidiness. README and README_ZH each carry an explicit non-affiliation notice, document the side-by-side package migration including the /etc/systemd/system/silo.service.d/10-legacy-user.conf drop-in for keeping a legacy UID/GID, and state that recursive chown is never performed. The trademark attribution uses the policy's approved "based on MinIO technology" wording, not the shortened form the policy rejects. github.com/pgsty/minio links are left in place and labelled transitional. The repository has not been renamed, and rewriting them now would produce documented URLs that 404 until the cutover; they change in the cutover commit together with the goreleaser release target, the OCI source label and the raw-content branch. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
58 lines
1.8 KiB
Markdown
58 lines
1.8 KiB
Markdown
# Deploy Silo on Chrooted Environment [](https://hub.docker.com/r/pgsty/silo/)
|
|
|
|
Chroot allows user based namespace isolation on many standard Linux deployments.
|
|
|
|
## 1. Prerequisites
|
|
|
|
- Familiarity with [chroot](http://man7.org/linux/man-pages/man2/chroot.2.html)
|
|
- Chroot installed on your machine.
|
|
|
|
## 2. Install Silo in Chroot
|
|
|
|
Build Silo from source and install it in the chroot directory:
|
|
|
|
```sh
|
|
# From a checked-out Silo source tree
|
|
go build -o silo .
|
|
|
|
# Create the bin directory in your chroot
|
|
mkdir -p /mnt/export/${USER}/bin
|
|
|
|
# Copy the built binary to the chroot directory
|
|
cp ./silo /mnt/export/${USER}/bin/silo
|
|
chmod +x /mnt/export/${USER}/bin/silo
|
|
```
|
|
|
|
Versioned binaries and native packages are also available from the
|
|
[Silo download page](https://silo.pgsty.com/download/).
|
|
|
|
Bind your `proc` mount to the target chroot directory
|
|
|
|
```
|
|
sudo mount --bind /proc /mnt/export/${USER}/proc
|
|
```
|
|
|
|
## 3. Run Standalone Silo in Chroot
|
|
|
|
### GNU/Linux
|
|
|
|
```sh
|
|
sudo chroot --userspec username:group /mnt/export/${USER} /bin/silo --config-dir=/.silo server /data
|
|
|
|
Endpoint: http://192.168.1.92:9000 http://65.19.167.92:9000
|
|
AccessKey: MVPSPBW4NP2CMV1W3TXD
|
|
SecretKey: X3RKxEeFOI8InuNWoPsbG+XEVoaJVCqbvxe+PTOa
|
|
...
|
|
...
|
|
```
|
|
|
|
Instance is now accessible on the host at port 9000, proceed to access the Web browser at <http://127.0.0.1:9000/>
|
|
|
|
## Explore Further
|
|
|
|
- [Silo Erasure Code Overview](https://silo.pgsty.com/operations/concepts/erasure-coding/)
|
|
- [Use `mc` with Silo Server](https://silo.pgsty.com/reference/minio-mc/)
|
|
- [Use `aws-cli` with Silo Server](https://silo.pgsty.com/integrations/aws-cli-with-minio/)
|
|
- [Use `minio-go` SDK with Silo Server](https://silo.pgsty.com/developers/go/minio-go/)
|
|
- [The Silo documentation website](https://silo.pgsty.com/docs/)
|