K3s集群中Nexus重启后用户与数据不持久化问题解决
解决K3s树莓派集群中Nexus数据持久化失效问题
问题场景
在树莓派K3s集群部署Nexus时,已配置StatefulSet、StorageClass、PVC及Service,但Pod重启后所有用户配置与数据都会丢失,必须重新创建配置和用户。
修复方案
通过以下两项调整彻底解决了持久化问题:
- 在StatefulSet的Pod模板中添加
securityContext字段,指定运行用户、组以及文件系统组,确保Nexus进程拥有挂载存储的读写权限 - 调整存储卷的挂载路径,与Nexus容器内部的数据存储目录完全匹配
完整可运行配置
# Nexus StatefulSet 配置 apiVersion: apps/v1 kind: StatefulSet metadata: name: nexus spec: serviceName: nexus-service replicas: 1 selector: matchLabels: app: nexus template: metadata: labels: app: nexus spec: securityContext: runAsUser: 200 runAsGroup: 200 fsGroup: 200 containers: - name: nexus image: sonatype/nexus3:latest ports: - containerPort: 8081 volumeMounts: - name: nexus-data mountPath: /nexus-data volumeClaimTemplates: - metadata: name: nexus-data spec: accessModes: ["ReadWriteOnce"] storageClassName: "local-path" # 适配树莓派K3s默认StorageClass resources: requests: storage: 10Gi # Nexus Service 配置 apiVersion: v1 kind: Service metadata: name: nexus-service spec: type: NodePort ports: - port: 8081 targetPort: 8081 nodePort: 30081 selector: app: nexus
内容的提问来源于stack exchange,提问作者deroccha
相关产品推荐
相关产品推荐

