Build Alpine Packages / preflight (pull_request) Successful in 14s
Build Alpine Packages / build (gitea) (pull_request) Successful in 1m0s
Build Alpine Packages / build (lavinmq) (pull_request) Successful in 2m51s
Build Alpine Packages / build (nifi) (pull_request) Successful in 5s
Build Alpine Packages / build (seaweedfs) (pull_request) Successful in 39m45s
Build Alpine Packages / build (greptimedb) (pull_request) Successful in 1h31m44s
Build Alpine Packages / verify-and-publish (pull_request) Successful in 1m42s
157 lines
3.3 KiB
Markdown
157 lines
3.3 KiB
Markdown
# SeaweedFS Alpine Package
|
|
|
|
Builds SeaweedFS 4.48 from its upstream source release for `x86_64` and
|
|
`aarch64`. The package intentionally builds the upstream baseline feature set,
|
|
with the `sqlite`, `rclone`, and `gocdk` optional Go build tags enabled. Go and
|
|
Cargo dependencies are resolved from the versions pinned in the upstream
|
|
`go.sum` and `Cargo.lock` files.
|
|
|
|
## Package Commands
|
|
|
|
When updating SeaweedFS, generate the config scaffolds and refresh checksums:
|
|
|
|
```sh
|
|
ALPINE_PACKAGE=seaweedfs mise run apk:update-generated
|
|
ALPINE_PACKAGE=seaweedfs mise run apk:checksum
|
|
```
|
|
|
|
The refresh command generates every SeaweedFS 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
|
|
```
|
|
|
|
Log rotation for the default OpenRC service logs:
|
|
|
|
```sh
|
|
apk add seaweedfs-logrotate
|
|
```
|
|
|
|
This rotates `/var/log/seaweedfs/seaweedfs.*.log` daily and retains 14
|
|
compressed archives.
|
|
|
|
## Upgrade Or Pin
|
|
|
|
Upgrade:
|
|
|
|
```sh
|
|
apk upgrade seaweedfs
|
|
rc-service seaweedfs.master restart
|
|
```
|
|
|
|
Pin:
|
|
|
|
```sh
|
|
apk add seaweedfs=4.47-r3
|
|
```
|