apiVersion: apps/v1 kind: Deployment metadata: name: neuron namespace: neuron labels: app: neuron spec: replicas: 1 strategy: type: Recreate selector: matchLabels: app: neuron template: metadata: labels: app: neuron spec: containers: - name: neuron image: registry.neuralplatform.ai/neural-platform/neuron:efc982c605cacc6929f29382f293e2a2d4a4cf95 imagePullPolicy: Always command: - bash - -c - mkdir -p /root/.neuron && ln -sf /data/neuron.db /root/.neuron/neuron.db && python -m synapse platform serve --mcp-host 0.0.0.0 --mcp-port 8001 --webhook-port 3847 ports: - name: mcp containerPort: 8001 - name: webhook containerPort: 3847 envFrom: - configMapRef: name: neuron-config - secretRef: name: neuron-secrets volumeMounts: - name: data mountPath: /data - name: app-config mountPath: /app/config/default.yaml subPath: default.yaml resources: requests: memory: 256Mi cpu: 100m ephemeral-storage: 256Mi limits: memory: 1Gi cpu: 500m ephemeral-storage: 1Gi livenessProbe: tcpSocket: port: mcp initialDelaySeconds: 15 periodSeconds: 30 readinessProbe: tcpSocket: port: mcp initialDelaySeconds: 10 periodSeconds: 10 volumes: - name: data persistentVolumeClaim: claimName: neuron-data - name: app-config configMap: name: neuron-config items: - key: default.yaml path: default.yaml --- apiVersion: v1 kind: Service metadata: name: neuron namespace: neuron spec: selector: app: neuron ports: - name: mcp port: 8001 targetPort: 8001 - name: webhook port: 3847 targetPort: 3847 type: ClusterIP --- # cloudflared — Cloudflare tunnel for external Axon webhook access # Routes: axon.neuralplatform.ai → neuron:3847 apiVersion: apps/v1 kind: Deployment metadata: name: cloudflared namespace: neuron labels: app: cloudflared spec: replicas: 1 selector: matchLabels: app: cloudflared template: metadata: labels: app: cloudflared spec: containers: - name: cloudflared image: cloudflare/cloudflared:latest args: ["tunnel", "--no-autoupdate", "run"] env: - name: TUNNEL_TOKEN valueFrom: secretKeyRef: name: cloudflared-secret key: TUNNEL_TOKEN resources: requests: memory: 64Mi cpu: 50m limits: memory: 128Mi cpu: 200m livenessProbe: httpGet: path: /ready port: 20241 initialDelaySeconds: 10 periodSeconds: 30