feat(service): add seaweedfs template (#7617)
Co-authored-by: 🏔️ Peak <122374094+peaklabs-dev@users.noreply.github.com>
This commit is contained in:
parent
75d10bb7bf
commit
9962ca8ba9
2 changed files with 87 additions and 0 deletions
BIN
public/seaweedfs.png
Normal file
BIN
public/seaweedfs.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 77 KiB |
87
templates/compose/seaweedfs.yaml
Normal file
87
templates/compose/seaweedfs.yaml
Normal file
|
|
@ -0,0 +1,87 @@
|
|||
# documentation: https://github.com/seaweedfs/seaweedfs
|
||||
# slogan: SeaweedFS is a simple and highly scalable distributed file system. Compatible with S3, with an admin web interface.
|
||||
# category: storage
|
||||
# tags: object, storage, server, s3, api
|
||||
# logo: svgs/garage.svg
|
||||
# port: 8333
|
||||
|
||||
services:
|
||||
seaweedfs-master:
|
||||
image: chrislusf/seaweedfs:4.05
|
||||
environment:
|
||||
- SERVICE_URL_S3_8333
|
||||
- AWS_ACCESS_KEY_ID=${SERVICE_USER_S3}
|
||||
- AWS_SECRET_ACCESS_KEY=${SERVICE_PASSWORD_S3}
|
||||
volumes:
|
||||
- seaweedfs-s3-data:/data
|
||||
- type: bind
|
||||
source: ./base-config.json
|
||||
target: /base-config.json
|
||||
content: |
|
||||
{
|
||||
"identities": [
|
||||
{
|
||||
"name": "anonymous",
|
||||
"actions": [
|
||||
"Read"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "admin",
|
||||
"credentials": [
|
||||
{
|
||||
"accessKey": "env:AWS_ACCESS_KEY_ID",
|
||||
"secretKey": "env:AWS_SECRET_ACCESS_KEY"
|
||||
}
|
||||
],
|
||||
"actions": [
|
||||
"Admin",
|
||||
"Read",
|
||||
"ReadAcp",
|
||||
"List",
|
||||
"Tagging",
|
||||
"Write",
|
||||
"WriteAcp"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
entrypoint: |
|
||||
sh -c '\
|
||||
sed "s/env:AWS_ACCESS_KEY_ID/$AWS_ACCESS_KEY_ID/g" /base-config.json > /base1-config.json; \
|
||||
sed "s/env:AWS_SECRET_ACCESS_KEY/$AWS_SECRET_ACCESS_KEY/g" /base1-config.json > /config.json; \
|
||||
weed server -dir=/data -master.port=9333 -s3 -s3.port=8333 -s3.config=/config.json\
|
||||
'
|
||||
healthcheck:
|
||||
test:
|
||||
- CMD-SHELL
|
||||
- "wget --spider -q http://0.0.0.0:8333; [ $$? -le 8 ]"
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
retries: 10
|
||||
|
||||
seaweedfs-admin:
|
||||
image: chrislusf/seaweedfs:4.05
|
||||
environment:
|
||||
- SERVICE_URL_ADMIN_23646
|
||||
- SEAWEED_USER_ADMIN=${SERVICE_USER_ADMIN}
|
||||
- SEAWEED_PASSWORD_ADMIN=${SERVICE_PASSWORD_ADMIN}
|
||||
command:
|
||||
- admin
|
||||
- "-master=seaweedfs-master:9333"
|
||||
- "-adminUser=${SEAWEED_USER_ADMIN}"
|
||||
- "-adminPassword=${SEAWEED_PASSWORD_ADMIN}"
|
||||
- "-port=23646"
|
||||
- "-dataDir=/data"
|
||||
volumes:
|
||||
- seaweedfs-admin-data:/data
|
||||
healthcheck:
|
||||
test:
|
||||
- CMD-SHELL
|
||||
- "wget --spider -q http://0.0.0.0:23646; [ $$? -le 8 ]"
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
retries: 10
|
||||
depends_on:
|
||||
seaweedfs-master:
|
||||
condition: service_healthy
|
||||
Loading…
Reference in a new issue