UNPKG

@underpostnet/underpost

Version:

Underpost Platform — end-to-end CI/CD and application-delivery toolchain CLI. Covers bare metal, Kubernetes, K3s, kubeadm, LXD, container/image orchestration, secrets, databases, cron jobs, monitoring, SSH, runners, PWA + Workbox delivery, and release orc

150 lines (145 loc) 4.15 kB
apiVersion: apps/v1 kind: StatefulSet metadata: name: ipfs-cluster spec: serviceName: ipfs-cluster replicas: 1 selector: matchLabels: app: ipfs-cluster template: metadata: labels: app: ipfs-cluster spec: initContainers: - name: configure-ipfs image: ipfs/kubo:latest imagePullPolicy: IfNotPresent securityContext: runAsUser: 0 command: ['sh', '/custom/configure-ipfs.sh'] volumeMounts: - name: ipfs-storage mountPath: /data/ipfs - name: configure-script mountPath: /custom containers: - name: ipfs image: ipfs/kubo:latest imagePullPolicy: IfNotPresent env: - name: IPFS_FD_MAX value: '4096' ports: - name: swarm protocol: TCP containerPort: 4001 - name: swarm-udp protocol: UDP containerPort: 4001 - name: api protocol: TCP containerPort: 5001 - name: ws protocol: TCP containerPort: 8081 - name: http protocol: TCP containerPort: 8080 livenessProbe: tcpSocket: port: swarm initialDelaySeconds: 30 timeoutSeconds: 5 periodSeconds: 15 volumeMounts: - name: ipfs-storage mountPath: /data/ipfs - name: configure-script mountPath: /custom resources: requests: cpu: '100m' memory: '256Mi' limits: cpu: '500m' memory: '512Mi' - name: ipfs-cluster image: ipfs/ipfs-cluster:latest imagePullPolicy: IfNotPresent command: ['sh', '/custom/entrypoint.sh'] env: - name: BOOTSTRAP_PEER_ID valueFrom: configMapKeyRef: name: env-config key: bootstrap-peer-id - name: BOOTSTRAP_PEER_PRIV_KEY valueFrom: secretKeyRef: name: ipfs-cluster-secret key: bootstrap-peer-priv-key - name: CLUSTER_SECRET valueFrom: secretKeyRef: name: ipfs-cluster-secret key: cluster-secret - name: CLUSTER_MONITOR_PING_INTERVAL value: '3m' - name: SVC_NAME valueFrom: configMapKeyRef: name: env-config key: CLUSTER_SVC_NAME ports: - name: api-http containerPort: 9094 protocol: TCP - name: proxy-http containerPort: 9095 protocol: TCP - name: cluster-swarm containerPort: 9096 protocol: TCP livenessProbe: tcpSocket: port: cluster-swarm initialDelaySeconds: 5 timeoutSeconds: 5 periodSeconds: 10 volumeMounts: - name: cluster-storage mountPath: /data/ipfs-cluster - name: configure-script mountPath: /custom resources: requests: cpu: '100m' memory: '128Mi' limits: cpu: '500m' memory: '512Mi' volumes: - name: configure-script configMap: name: ipfs-cluster-set-bootstrap-conf defaultMode: 0755 volumeClaimTemplates: - metadata: name: cluster-storage spec: storageClassName: ipfs-storage-class accessModes: ['ReadWriteOnce'] resources: requests: storage: 1Gi - metadata: name: ipfs-storage spec: storageClassName: ipfs-storage-class accessModes: ['ReadWriteOnce'] resources: requests: storage: 5Gi