diff --git a/seaweedfs/3.94/config/prometheus.yml b/seaweedfs/3.94/config/prometheus.yml new file mode 100644 index 000000000..2f0ead441 --- /dev/null +++ b/seaweedfs/3.94/config/prometheus.yml @@ -0,0 +1,14 @@ +global: + scrape_interval: 30s + scrape_timeout: 10s + +scrape_configs: + - job_name: services + metrics_path: /metrics + static_configs: + - targets: + - 'prometheus:9090' + - 'master:9324' + - 'volume:9325' + - 'filer:9326' + - 's3:9327' \ No newline at end of file diff --git a/seaweedfs/3.94/data.yml b/seaweedfs/3.94/data.yml new file mode 100644 index 000000000..fd2e8aa51 --- /dev/null +++ b/seaweedfs/3.94/data.yml @@ -0,0 +1,134 @@ +additionalProperties: + formFields: + - default: "/home/seaweedfs" + edit: true + envKey: SEAWEEDFS_ROOT_PATH + labelZh: 数据持久化路径 + labelEn: Data persistence path + required: true + type: text + - default: 8333 + edit: true + envKey: PANEL_APP_PORT_HTTP + labelZh: WebUI 端口 + labelEn: WebUI port + required: true + rule: paramPort + type: number + - default: 9327 + edit: true + envKey: PANEL_APP_PORT_S3_METRICS + labelZh: S3 监控端口 + labelEn: S3 Metrics port + required: true + rule: paramPort + type: number + - default: 9333 + edit: true + envKey: PANEL_APP_PORT_MASTER_SERVER + labelZh: 集群服务端口 + labelEn: Cluster service port + required: true + rule: paramPort + type: number + - default: 19333 + edit: true + envKey: PANEL_APP_PORT_MASTER_API + labelZh: 集群通讯端口 + labelEn: Cluster communication port + required: true + rule: paramPort + type: number + - default: 9324 + edit: true + envKey: PANEL_APP_PORT_MASTER_METRICS + labelZh: 集群监控端口 + labelEn: Cluster Metrics port + required: true + rule: paramPort + type: number + - default: 8080 + edit: true + envKey: PANEL_APP_PORT_VOLUME_SERVER + labelZh: 存储服务端口 + labelEn: Storage service port + required: true + rule: paramPort + type: number + - default: 18080 + edit: true + envKey: PANEL_APP_PORT_VOLUME_API + labelZh: 存储通讯端口 + labelEn: Storage communication port + required: true + rule: paramPort + type: number + - default: 9325 + edit: true + envKey: PANEL_APP_PORT_VOLUME_METRICS + labelZh: 存储监控端口 + labelEn: Storage Metrics port + required: true + rule: paramPort + type: number + - default: 8888 + edit: true + envKey: PANEL_APP_PORT_FILER_SERVER + labelZh: 索引服务端口 + labelEn: Index service port + required: true + rule: paramPort + type: number + - default: 18888 + edit: true + envKey: PANEL_APP_PORT_FILER_API + labelZh: 索引通讯端口 + labelEn: Index communication port + required: true + rule: paramPort + type: number + - default: 9326 + edit: true + envKey: PANEL_APP_PORT_FILER_METRICS + labelZh: 索引监控端口 + labelEn: Index Metrics port + required: true + rule: paramPort + type: number + - default: 7333 + edit: true + envKey: PANEL_APP_PORT_WEBDAV + labelZh: WebDAV 端口 + labelEn: WebDAV port + required: true + rule: paramPort + type: number + - default: 9090 + edit: true + envKey: PANEL_APP_PORT_METRICS + labelZh: Prometheus 端口 + labelEn: Prometheus port + required: true + rule: paramPort + type: number + - default: "" + edit: true + envKey: CUSTOM_MOUNT_DIRECTORY_1 + labelEn: Custom mount directory 1 + labelZh: 自定义挂载目录 1 + required: false + type: text + - default: "" + edit: true + envKey: CUSTOM_MOUNT_DIRECTORY_2 + labelEn: Custom mount directory 2 + labelZh: 自定义挂载目录 2 + required: false + type: text + - default: "" + edit: true + envKey: CUSTOM_MOUNT_DIRECTORY_3 + labelEn: Custom mount directory 3 + labelZh: 自定义挂载目录 3 + required: false + type: text diff --git a/seaweedfs/3.94/docker-compose.yml b/seaweedfs/3.94/docker-compose.yml new file mode 100644 index 000000000..9ae891765 --- /dev/null +++ b/seaweedfs/3.94/docker-compose.yml @@ -0,0 +1,139 @@ +networks: + 1panel-network: + external: true + seaweedfs-network: + external: true + +services: + seaweedfs-master: + image: chrislusf/seaweedfs:3.94 + container_name: ${CONTAINER_NAME}-master + restart: always + networks: + - seaweedfs-network + ports: + - ${PANEL_APP_PORT_MASTER_SERVER}:9333 + - ${PANEL_APP_PORT_MASTER_API}:19333 + - ${PANEL_APP_PORT_MASTER_METRICS}:9324 + command: "master -ip=master -ip.bind=0.0.0.0 -metricsPort=9324" + env_file: + - ${GLOBAL_ENV_FILE:-/etc/1panel/envs/global.env} + - ${ENV_FILE:-/etc/1panel/envs/default.env} + volumes: + - ${CUSTOM_MOUNT_DIRECTORY_1:-./default_mount_1}:${CUSTOM_MOUNT_DIRECTORY_1:-/default_mount_1} + - ${CUSTOM_MOUNT_DIRECTORY_2:-./default_mount_2}:${CUSTOM_MOUNT_DIRECTORY_2:-/default_mount_2} + - ${CUSTOM_MOUNT_DIRECTORY_3:-./default_mount_3}:${CUSTOM_MOUNT_DIRECTORY_3:-/default_mount_3} + environment: + - TZ=Asia/Shanghai + seaweedfs-volume: + image: chrislusf/seaweedfs:3.94 + depends_on: + - seaweedfs-master + container_name: ${CONTAINER_NAME}-volume + restart: always + networks: + - seaweedfs-network + ports: + - ${PANEL_APP_PORT_VOLUME_SERVER}:8080 + - ${PANEL_APP_PORT_VOLUME_API}:18080 + - ${PANEL_APP_PORT_VOLUME_METRICS}:9325 + command: 'volume -mserver="master:9333" -ip.bind=0.0.0.0 -port=8080 -metricsPort=9325' + env_file: + - ${GLOBAL_ENV_FILE:-/etc/1panel/envs/global.env} + - ${ENV_FILE:-/etc/1panel/envs/default.env} + volumes: + - ${CUSTOM_MOUNT_DIRECTORY_1:-./default_mount_1}:${CUSTOM_MOUNT_DIRECTORY_1:-/default_mount_1} + - ${CUSTOM_MOUNT_DIRECTORY_2:-./default_mount_2}:${CUSTOM_MOUNT_DIRECTORY_2:-/default_mount_2} + - ${CUSTOM_MOUNT_DIRECTORY_3:-./default_mount_3}:${CUSTOM_MOUNT_DIRECTORY_3:-/default_mount_3} + environment: + - TZ=Asia/Shanghai + seaweedfs-filer: + image: chrislusf/seaweedfs:3.94 + depends_on: + - seaweedfs-master + - seaweedfs-volume + container_name: ${CONTAINER_NAME}-filer + restart: always + networks: + - seaweedfs-network + ports: + - ${PANEL_APP_PORT_FILER_SERVER}:8888 + - ${PANEL_APP_PORT_FILER_API}:18888 + - ${PANEL_APP_PORT_FILER_METRICS}:9326 + command: 'filer -master="master:9333" -ip.bind=0.0.0.0 -metricsPort=9326' + tty: true + stdin_open: true + env_file: + - ${GLOBAL_ENV_FILE:-/etc/1panel/envs/global.env} + - ${ENV_FILE:-/etc/1panel/envs/default.env} + volumes: + - ${CUSTOM_MOUNT_DIRECTORY_1:-./default_mount_1}:${CUSTOM_MOUNT_DIRECTORY_1:-/default_mount_1} + - ${CUSTOM_MOUNT_DIRECTORY_2:-./default_mount_2}:${CUSTOM_MOUNT_DIRECTORY_2:-/default_mount_2} + - ${CUSTOM_MOUNT_DIRECTORY_3:-./default_mount_3}:${CUSTOM_MOUNT_DIRECTORY_3:-/default_mount_3} + environment: + - TZ=Asia/Shanghai + seaweedfs-s3: + image: chrislusf/seaweedfs:3.94 + depends_on: + - seaweedfs-master + - seaweedfs-volume + - seaweedfs-filer + container_name: ${CONTAINER_NAME} + labels: + createdBy: "Apps" + restart: always + networks: + - seaweedfs-network + ports: + - ${PANEL_APP_PORT_HTTP}:8333 + - ${PANEL_APP_PORT_S3_METRICS}:9327 + command: 's3 -filer="filer:8888" -ip.bind=0.0.0.0 -metricsPort=9327' + env_file: + - ${GLOBAL_ENV_FILE:-/etc/1panel/envs/global.env} + - ${ENV_FILE:-/etc/1panel/envs/default.env} + volumes: + - ${CUSTOM_MOUNT_DIRECTORY_1:-./default_mount_1}:${CUSTOM_MOUNT_DIRECTORY_1:-/default_mount_1} + - ${CUSTOM_MOUNT_DIRECTORY_2:-./default_mount_2}:${CUSTOM_MOUNT_DIRECTORY_2:-/default_mount_2} + - ${CUSTOM_MOUNT_DIRECTORY_3:-./default_mount_3}:${CUSTOM_MOUNT_DIRECTORY_3:-/default_mount_3} + environment: + - TZ=Asia/Shanghai + seaweedfs-webdav: + image: chrislusf/seaweedfs:3.94 + depends_on: + - seaweedfs-master + - seaweedfs-volume + - seaweedfs-filer + container_name: ${CONTAINER_NAME}-webdav + restart: always + networks: + - seaweedfs-network + ports: + - ${PANEL_APP_PORT_WEBDAV}:7333 + command: 'webdav -filer="filer:8888"' + env_file: + - ${GLOBAL_ENV_FILE:-/etc/1panel/envs/global.env} + - ${ENV_FILE:-/etc/1panel/envs/default.env} + volumes: + - ${CUSTOM_MOUNT_DIRECTORY_1:-./default_mount_1}:${CUSTOM_MOUNT_DIRECTORY_1:-/default_mount_1} + - ${CUSTOM_MOUNT_DIRECTORY_2:-./default_mount_2}:${CUSTOM_MOUNT_DIRECTORY_2:-/default_mount_2} + - ${CUSTOM_MOUNT_DIRECTORY_3:-./default_mount_3}:${CUSTOM_MOUNT_DIRECTORY_3:-/default_mount_3} + environment: + - TZ=Asia/Shanghai + seaweedfs-prometheus: + image: prom/prometheus:v2.21.0 + depends_on: + - seaweedfs-s3 + container_name: ${CONTAINER_NAME}-prometheus + restart: always + networks: + - seaweedfs-network + ports: + - ${PANEL_APP_PORT_METRICS}:9090 + command: --web.enable-lifecycle --config.file=/etc/prometheus/prometheus.yml + env_file: + - ${GLOBAL_ENV_FILE:-/etc/1panel/envs/global.env} + - ${ENV_FILE:-/etc/1panel/envs/default.env} + volumes: + - ${SEAWEEDFS_ROOT_PATH}/prometheus:/etc/prometheus + environment: + - TZ=Asia/Shanghai diff --git a/seaweedfs/3.94/envs/default.env b/seaweedfs/3.94/envs/default.env new file mode 100644 index 000000000..cd05f46e6 --- /dev/null +++ b/seaweedfs/3.94/envs/default.env @@ -0,0 +1,2 @@ +# copyright© 2024 XinJiang Ms Studio +ENV_FILE=.env diff --git a/seaweedfs/3.94/envs/global.env b/seaweedfs/3.94/envs/global.env new file mode 100644 index 000000000..e10989fe4 --- /dev/null +++ b/seaweedfs/3.94/envs/global.env @@ -0,0 +1,2 @@ +# copyright© 2024 XinJiang Ms Studio +TZ=Asia/Shanghai diff --git a/seaweedfs/3.94/scripts/init.sh b/seaweedfs/3.94/scripts/init.sh new file mode 100644 index 000000000..e6604710b --- /dev/null +++ b/seaweedfs/3.94/scripts/init.sh @@ -0,0 +1,22 @@ +#!/bin/bash + +if [ -f .env ]; then + source .env + + # setup-1 add default values + CURRENT_DIR=$(pwd) + sed -i '/^ENV_FILE=/d' .env + sed -i '/^GLOBAL_ENV_FILE=/d' .env + echo "ENV_FILE=${CURRENT_DIR}/.env" >> .env + echo "GLOBAL_ENV_FILE=${CURRENT_DIR}/envs/global.env" >> .env + + if [ ! -d $SEAWEEDFS_ROOT_PATH/prometheus ]; then + mkdir -p $SEAWEEDFS_ROOT_PATH/prometheus + fi + cp -rn ./config/* $SEAWEEDFS_ROOT_PATH/prometheus/ + + echo "Check Finish." + +else + echo "Error: .env file not found." +fi diff --git a/seaweedfs/3.94/scripts/uninstall.sh b/seaweedfs/3.94/scripts/uninstall.sh new file mode 100644 index 000000000..c86c4fbca --- /dev/null +++ b/seaweedfs/3.94/scripts/uninstall.sh @@ -0,0 +1,10 @@ +#!/bin/bash + +if [ -f .env ]; then + source .env + + echo "Check Finish." + +else + echo "Error: .env file not found." +fi diff --git a/seaweedfs/3.94/scripts/upgrade.sh b/seaweedfs/3.94/scripts/upgrade.sh new file mode 100644 index 000000000..07fb8c3fe --- /dev/null +++ b/seaweedfs/3.94/scripts/upgrade.sh @@ -0,0 +1,17 @@ +#!/bin/bash + +if [ -f .env ]; then + source .env + + # setup-1 add default values + CURRENT_DIR=$(pwd) + sed -i '/^ENV_FILE=/d' .env + sed -i '/^GLOBAL_ENV_FILE=/d' .env + echo "ENV_FILE=${CURRENT_DIR}/.env" >> .env + echo "GLOBAL_ENV_FILE=${CURRENT_DIR}/envs/global.env" >> .env + + echo "Check Finish." + +else + echo "Error: .env file not found." +fi diff --git a/seaweedfs/README.md b/seaweedfs/README.md new file mode 100644 index 000000000..f349e340f --- /dev/null +++ b/seaweedfs/README.md @@ -0,0 +1,15 @@ +# APP_NAME + +简短的介绍 + +![APP_NAME](https://file.lifebus.top/imgs/app_name_cover.png) + +![](https://img.shields.io/badge/%E6%96%B0%E7%96%86%E8%90%8C%E6%A3%AE%E8%BD%AF%E4%BB%B6%E5%BC%80%E5%8F%91%E5%B7%A5%E4%BD%9C%E5%AE%A4-%E6%8F%90%E4%BE%9B%E6%8A%80%E6%9C%AF%E6%94%AF%E6%8C%81-blue) + +## 简介 + +XXXXXX + +--- + +![Ms Studio](https://file.lifebus.top/imgs/ms_blank_001.png) diff --git a/seaweedfs/data.yml b/seaweedfs/data.yml new file mode 100644 index 000000000..ce0a79444 --- /dev/null +++ b/seaweedfs/data.yml @@ -0,0 +1,14 @@ +additionalProperties: + key: seaweedfs + name: SeaweedFS + tags: + - WebSite + - Local + shortDescZh: 中文简介 + shortDescEn: 英文简介 + type: website + crossVersionUpdate: true + limit: 0 + website: https://seaweedfs.com/ + github: https://github.com/seaweedfs/seaweedfs/ + document: https://github.com/seaweedfs/seaweedfs/ diff --git a/seaweedfs/logo.png b/seaweedfs/logo.png new file mode 100644 index 000000000..2512e2b9c Binary files /dev/null and b/seaweedfs/logo.png differ