-
Notifications
You must be signed in to change notification settings - Fork 6
Expand file tree
/
Copy pathDockerfile.jetson
More file actions
48 lines (37 loc) · 1.44 KB
/
Dockerfile.jetson
File metadata and controls
48 lines (37 loc) · 1.44 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
# Jetson Orin Dockerfile (JetPack 6 / L4T)
# For 16GB VRAM: 14B + 7B config
# For 8GB VRAM: Use zeta-lite profile
FROM nvcr.io/nvidia/l4t-cuda:12.2.2-runtime
# Install runtime dependencies
RUN apt-get update && apt-get install -y \
curl \
ca-certificates \
python3 \
&& rm -rf /var/lib/apt/lists/*
WORKDIR /app
# Copy the pre-built aarch64 binary
# Build with: cmake -DGGML_CUDA=ON && make zeta-server
COPY dist/zeta-server-aarch64 /app/zeta-server
RUN chmod +x /app/zeta-server
# Create directories for models, storage, and dreams
RUN mkdir -p /models /storage /storage/dreams/pending /storage/dreams/archive /storage/blocks
# Environment variables (14B + 7B production config)
ENV ZETA_HOST="0.0.0.0"
ENV ZETA_PORT="8080"
ENV MODEL_MAIN="/models/qwen2.5-14b-instruct-q4_k_m.gguf"
ENV MODEL_CODER="/models/qwen2.5-coder-7b-instruct-q4_k_m.gguf"
ENV MODEL_EMBED="/models/nomic-embed-text-v1.5.f16.gguf"
ENV ZETA_STORAGE="/storage"
ENV ZETA_DREAM_INTERVAL="300"
ENV ZETA_DREAM_DIR="/storage/dreams"
ENV ZETA_GRAPH_PATH="/storage/blocks/graph.bin"
# GPU layers for Jetson Orin (16GB unified memory)
ENV GPU_LAYERS_MAIN="49"
ENV GPU_LAYERS_CODER="35"
EXPOSE 8080
COPY docker-entrypoint.sh /app/
COPY scripts/index_codebase.py /app/scripts/
RUN chmod +x /app/docker-entrypoint.sh
HEALTHCHECK --interval=30s --timeout=10s --start-period=120s --retries=3 \
CMD curl -f http://localhost:8080/health || exit 1
ENTRYPOINT ["/app/docker-entrypoint.sh"]