150 lines
3.2 KiB
Markdown
150 lines
3.2 KiB
Markdown
# SeaweedFS Alpine Package
|
|
|
|
Builds SeaweedFS 4.47 from its upstream source release for `x86_64` and
|
|
`aarch64`. The package intentionally builds the upstream baseline feature set,
|
|
without optional build tags. Versioned Go and Cargo vendor archives make the
|
|
build fully offline after source retrieval.
|
|
|
|
## Package Commands
|
|
|
|
When updating SeaweedFS, refresh the vendor archives before generating the
|
|
config scaffolds and checksums:
|
|
|
|
```sh
|
|
PACKAGE_DIR=packaging/alpine/local/seaweedfs \
|
|
packaging/alpine/local/seaweedfs/scripts/update-vendor-sources.sh
|
|
ALPINE_PACKAGE=seaweedfs mise run apk:update-generated
|
|
ALPINE_PACKAGE=seaweedfs mise run apk:checksum
|
|
```
|
|
|
|
The refresh command generates every SeaweedFS 4.47 scaffold configuration:
|
|
`admin`, `credential`, `filer`, `master`, `volume`, `notification`,
|
|
`replication`, `security`, and `shell`.
|
|
|
|
Build:
|
|
|
|
```sh
|
|
ALPINE_PACKAGE=seaweedfs mise run apk:build
|
|
```
|
|
|
|
Install-test local build:
|
|
|
|
```sh
|
|
ALPINE_PACKAGE=seaweedfs SKIP_BUILD=1 mise run apk:test-install
|
|
```
|
|
|
|
## Install Node Roles
|
|
|
|
Single-node install:
|
|
|
|
```sh
|
|
apk add seaweedfs \
|
|
seaweedfs-master-openrc \
|
|
seaweedfs-volume-openrc \
|
|
seaweedfs-filer-openrc
|
|
```
|
|
|
|
Role-specific installs:
|
|
|
|
```sh
|
|
apk add seaweedfs seaweedfs-master-openrc
|
|
apk add seaweedfs seaweedfs-volume-openrc
|
|
apk add seaweedfs seaweedfs-filer-openrc
|
|
```
|
|
|
|
Available OpenRC role packages:
|
|
|
|
```text
|
|
seaweedfs-master-openrc -> /etc/init.d/seaweedfs.master
|
|
seaweedfs-volume-openrc -> /etc/init.d/seaweedfs.volume
|
|
seaweedfs-filer-openrc -> /etc/init.d/seaweedfs.filer
|
|
seaweedfs-s3-openrc -> /etc/init.d/seaweedfs.s3
|
|
seaweedfs-webdav-openrc -> /etc/init.d/seaweedfs.webdav
|
|
seaweedfs-sftp-openrc -> /etc/init.d/seaweedfs.sftp
|
|
seaweedfs-admin-openrc -> /etc/init.d/seaweedfs.admin
|
|
seaweedfs-worker-openrc -> /etc/init.d/seaweedfs.worker
|
|
seaweedfs-worker-lance-openrc -> /etc/init.d/seaweedfs.worker-lance
|
|
```
|
|
|
|
Replace Alpine's old generic OpenRC package before installing a role split:
|
|
|
|
```sh
|
|
apk del seaweedfs-openrc
|
|
apk add seaweedfs seaweedfs-master-openrc
|
|
```
|
|
|
|
## Configure Services
|
|
|
|
Runtime paths:
|
|
|
|
```text
|
|
/usr/bin/weed
|
|
/etc/seaweedfs/*.toml
|
|
/etc/conf.d/seaweedfs.*
|
|
/etc/init.d/seaweedfs.*
|
|
```
|
|
|
|
Edit `/etc/conf.d/seaweedfs.<role>` for flags. The package supplies a small set
|
|
of safe defaults in `/etc/seaweedfs/`; the complete upstream-generated scaffold
|
|
configs are available at:
|
|
|
|
```text
|
|
/usr/share/doc/seaweedfs/examples/
|
|
```
|
|
|
|
Copy and customize a scaffold file only when enabling its related feature.
|
|
|
|
Enable services:
|
|
|
|
```sh
|
|
rc-update add seaweedfs.master default
|
|
rc-service seaweedfs.master start
|
|
|
|
rc-update add seaweedfs.volume default
|
|
rc-service seaweedfs.volume start
|
|
|
|
rc-update add seaweedfs.filer default
|
|
rc-service seaweedfs.filer start
|
|
|
|
# Optional: Lance table maintenance (requires a Lance namespace endpoint)
|
|
apk add seaweedfs-worker-lance-openrc
|
|
rc-update add seaweedfs.worker-lance default
|
|
rc-service seaweedfs.worker-lance start
|
|
```
|
|
|
|
Check status:
|
|
|
|
```sh
|
|
weed version
|
|
rc-service seaweedfs.master status
|
|
```
|
|
|
|
## Optional Packages
|
|
|
|
Docs and examples:
|
|
|
|
```sh
|
|
apk add seaweedfs-doc
|
|
```
|
|
|
|
Bash completion:
|
|
|
|
```sh
|
|
apk add bash-completion seaweedfs-bash-completion
|
|
```
|
|
|
|
## Upgrade Or Pin
|
|
|
|
Upgrade:
|
|
|
|
```sh
|
|
apk upgrade seaweedfs
|
|
rc-service seaweedfs.master restart
|
|
```
|
|
|
|
Pin:
|
|
|
|
```sh
|
|
apk add seaweedfs=4.47-r3
|
|
```
|