swactor/apps/myelin/node-image/Dockerfile.job-tinygrad
Zachery Aaron Shores-Chmielewski 0e2fc2b164 feat(myelin): add actor-backed job data plane and uploads
Replace the eventfd/ring job bootstrap with one inherited arena descriptor, actor-owned sessions, sealed blob leases, awaitable inbox wakeups, and zero-copy Python mappings. Route VastAI mock provisioning through image-backed local Docker workers and preserve pinned child and controller routes across directory updates.

Add TOML job-file submission to the Fleet UI with generic started, running, and completed feedback, reusable remote job controller routing, cancellation and kill invariants, Tinygrad fixture and image support, and comprehensive Rust, Python, CUDA, and lifecycle-ordering coverage.
2026-08-21 18:45:10 +04:00

37 lines
1.3 KiB
Text

# Minimal job image: Myelin agent + Python binding + tinygrad CUDA runtime.
# Build from the workspace root after building myelin-node:latest:
# docker build -f apps/myelin/node-image/Dockerfile.job-tinygrad -t myelin-job-tinygrad:cuda12.6 .
ARG BASE_IMAGE=myelin-node:latest
FROM ubuntu:24.04 AS python-binding
RUN apt-get update && \
apt-get install -y --no-install-recommends \
build-essential \
ca-certificates \
curl \
pkg-config \
python3-dev && \
rm -rf /var/lib/apt/lists/*
RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --profile minimal
ENV PATH=/root/.cargo/bin:${PATH}
WORKDIR /src
COPY . .
RUN cargo build --release -p python
FROM ${BASE_IMAGE}
RUN apt-get update && \
apt-get install -y --no-install-recommends python3 python3-pip && \
python3 -m pip install --break-system-packages --no-cache-dir tinygrad==0.11.0 && \
apt-get clean && \
rm -rf /var/lib/apt/lists/* \
/var/cache/apt/archives/* \
/root/.cache/pip
COPY --from=python-binding /src/target/release/libswactor.so /usr/local/lib/python3.12/dist-packages/swactor.so
COPY apps/myelin/jobs/tiny_linear_inference.py /usr/local/share/myelin/tiny_linear_inference.py
ENV CUDA_PTX=1 \
DEV=CUDA \
PYTHONPATH=/usr/local/lib/python3.12/dist-packages