apiVersion: apps/v1 kind: StatefulSet metadata: name: vsftpd namespace: mid labels: name: vsftpd spec: replicas: 1 selector: matchLabels: name: vsftpd serviceName: vsftpd template: metadata: labels: name: vsftpd spec: containers: - name: vsftpd #image: harbor.uenpay.com/base/vsftpd:zy54lll image: registry.cn-hangzhou.aliyuncs.com/zhengyu1992/vsftpd:zy5447 imagePullPolicy: Always ports: - containerPort: 21 env: - name: FTP_USER1 value: "ftpuen" - name: USER1_PASS value: "ftpuen" - name: FTP_USER2 value: "ftpxsf" - name: USER2_PASS value: "ftpxsf" - name: FTP_USER3 value: "ftpwfm" - name: USER3_PASS value: "ftpwfm" - name: FTP_DIR value: "/data/ftp" volumeMounts: - name: data mountPath: /data/ftp volumeClaimTemplates: - metadata: name: data # annotations: # volume.beta.kubernetes.io/storage-class: "cephfs-sc" spec: accessModes: - ReadWriteOnce resources: requests: storage: 30Gi --- apiVersion: v1 kind: Service metadata: name: vsftpd-nodeport namespace: mid labels: name: vsftpd spec: type: NodePort ports: - port: 21 targetPort: 21 selector: name: vsftpd --- apiVersion: v1 kind: Service metadata: name: vsftpd-headless namespace: mid labels: name: vsftpd spec: publishNotReadyAddresses: true ports: - port: 21 name: server targetPort: 21 clusterIP: None selector: name: vsftpd