mirror of
https://github.com/allaunthefox/Research-Stack.git
synced 2026-07-31 03:05:21 +00:00
- .devcontainer/Dockerfile: add PostgreSQL client libs, OpenSSL/libffi headers, gfortran/BLAS for scipy, rclone; install full Python dependency set (boto3, psycopg2-binary, fastapi, uvicorn, notion-client, httpx, pytest, numpy, scipy, etc.) in uv-managed venv; add rclone S3 gateway init script as ENTRYPOINT - .devcontainer/devcontainer.json: switch from build to pre-built image (localhost/research
42 lines
1.3 KiB
YAML
42 lines
1.3 KiB
YAML
apiVersion: apps/v1
|
|
kind: Deployment
|
|
metadata:
|
|
name: pulse-receiver
|
|
namespace: services
|
|
labels:
|
|
app: pulse-receiver
|
|
spec:
|
|
replicas: 1
|
|
selector:
|
|
matchLabels:
|
|
app: pulse-receiver
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app: pulse-receiver
|
|
spec:
|
|
containers:
|
|
- name: pulse-receiver
|
|
image: python:3-alpine
|
|
command:
|
|
- python3
|
|
- -c
|
|
- |
|
|
from http.server import HTTPServer, BaseHTTPRequestHandler
|
|
import json, time
|
|
pulses = {}
|
|
class H(BaseHTTPRequestHandler):
|
|
def do_POST(self):
|
|
node = self.path.strip("/")
|
|
pulses[node] = {"last": time.time(), "ts": time.strftime("%Y-%m-%dT%H:%M:%SZ", time.gmtime())}
|
|
self.send_response(200)
|
|
self.end_headers()
|
|
self.wfile.write(b"OK")
|
|
def do_GET(self):
|
|
self.send_response(200)
|
|
self.send_header("Content-Type", "application/json")
|
|
self.end_headers()
|
|
self.wfile.write(json.dumps(pulses, indent=2).encode())
|
|
HTTPServer(("0.0.0.0", 8080), H).serve_forever()
|
|
ports:
|
|
- containerPort: 8080
|