k8s快速部署filebrowser服务yaml文件配置

image

---
apiVersion: v1
kind: ConfigMap
metadata:
  name: filebrowser-config
  namespace: filesserver
data:
  settings.json: |
    {
      "port": 8080,
      "root": "/volumes",
      "address": "0.0.0.0",
      "database": "/database/filebrowser.db",
      "log": "stdout",
      "allowEdit": true,
      "allowNew": true,
      "allowCommands": true,
      "allowPerms": true,
      "local":"zh-cn",
      "auth": {
        "method": "password",
        "username": "admin",
        "password": "$FILEBROWSER_PASSWORD"
      }
    }

---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: filebrowser
  namespace: filesserver
spec:
  replicas: 1
  selector:
    matchLabels:
      app: filebrowser
  template:
    metadata:
      labels:
        app: filebrowser
    spec:
      containers:
        - name: filebrowser
          image: filebrowser/filebrowser:v2-s6-arm64
          ports:
            - containerPort: 8080 # 声明容器端口
          env:
            - name: FILEBROWSER_PASSWORD
              valueFrom:
                secretKeyRef:
                  name: filebrowser-secret
                  key: password
          volumeMounts:
            - name: data
              mountPath: /volumes
            - name: config
              mountPath: /config/settings.json # 直接覆盖配置文件
              subPath: settings.json
          resources:
            requests:
              cpu: 200m
              memory: 256Mi
            limits:
              cpu: 1000m
              memory: 2Gi
      volumes:
        - name: data
          persistentVolumeClaim:
            claimName: ai-pvc-nfs
        - name: config
          configMap:
            name: filebrowser-config

---
apiVersion: v1
kind: Service
metadata:
  name: filebrowser-svc
  namespace: filesserver
spec:
  selector:
    app: filebrowser
  type: NodePort
  ports:
    - port: 80
      targetPort: 8080
      nodePort: 30088 # 你可以根据需要改端口
posted @ 2025-07-07 15:54  槑孒  阅读(62)  评论(0)    收藏  举报