leinier310 commited on
Commit
1997cbd
verified
1 Parent(s): c85b3d3

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +29 -28
Dockerfile CHANGED
@@ -3,36 +3,37 @@ FROM python:3.11-slim
3
  # Instala herramientas necesarias
4
  RUN apt-get update && \
5
  apt-get install -y --no-install-recommends \
6
- xz-utils && \
7
- pip install --no-cache-dir huggingface_hub && \
8
  rm -rf /var/lib/apt/lists/*
9
 
10
- # Variables de entorno
11
- ENV HF_HOME=/workspace/.hf
12
- WORKDIR /workspace
13
- RUN mkdir -p /workspace/.hf /data
14
 
15
- # Script de arranque con logging detallado
16
- RUN echo '#!/usr/bin/env python3' > /run.py && \
17
- echo 'import os' >> /run.py && \
18
- echo 'from huggingface_hub import hf_hub_download' >> /run.py && \
19
- echo 'print("===== BitNet GGUF Downloader =====")' >> /run.py && \
20
- echo 'print("[1/3] Descargando modelo desde Hugging Face...")' >> /run.py && \
21
- echo 'path = hf_hub_download(' >> /run.py && \
22
- echo ' repo_id="microsoft/bitnet-b1.58-2B-4T-gguf",' >> /run.py && \
23
- echo ' filename="ggml-model-i2_s.gguf",' >> /run.py && \
24
- echo ' local_dir="/data",' >> /run.py && \
25
- echo ' cache_dir="/workspace/.hf"' >> /run.py && \
26
- echo ')' >> /run.py && \
27
- echo 'print(f"Modelo descargado en: {path}")' >> /run.py && \
28
- echo 'print("[2/3] Comprimimos con tar.xz (modo extremo)...")' >> /run.py && \
29
- echo 'os.system("tar -C /data -c -f /data/model.tar.xz -I \\"xz -9e -T0\\" ggml-model-i2_s.gguf")' >> /run.py && \
30
- echo 'print("[3/3] Tama帽os:")' >> /run.py && \
31
- echo 'os.system("du -h /data/ggml-model-i2_s.gguf")' >> /run.py && \
32
- echo 'os.system("du -h /data/model.tar.xz")' >> /run.py && \
33
- echo 'print("Servidor HTTP activo en puerto 7860")' >> /run.py && \
34
- echo 'os.chdir("/data")' >> /run.py && \
35
- echo 'os.system("python3 -m http.server 7860")' >> /run.py
 
 
 
 
36
 
37
  EXPOSE 7860
38
- CMD ["python3", "/run.py"]
 
3
  # Instala herramientas necesarias
4
  RUN apt-get update && \
5
  apt-get install -y --no-install-recommends \
6
+ xz-utils zstd rar wget && \
 
7
  rm -rf /var/lib/apt/lists/*
8
 
9
+ # Carpeta de trabajo fija y limpia
10
+ WORKDIR /app
 
 
11
 
12
+ # Script de arranque con logging y compresi贸n
13
+ RUN echo '#!/usr/bin/env python3' > /app/run.py && \
14
+ echo 'import os, time' >> /app/run.py && \
15
+ echo 'def log(msg): print(f"[{time.strftime(\"%H:%M:%S\")}] {msg}")' >> /app/run.py && \
16
+ echo 'log("===== BitNet GGUF Downloader =====")' >> /app/run.py && \
17
+ echo 'log("[1/4] Descargando modelo con wget...")' >> /app/run.py && \
18
+ echo 't0 = time.time()' >> /app/run.py && \
19
+ echo 'os.system("wget -O ggml-model-i2_s.gguf https://huggingface.co/microsoft/bitnet-b1.58-2B-4T-gguf/resolve/main/ggml-model-i2_s.gguf")' >> /app/run.py && \
20
+ echo 'log(f"Descarga completada ({round(time.time()-t0,1)}s)")' >> /app/run.py && \
21
+ echo 'log("[2/4] Comprimimos con tar.xz...")' >> /app/run.py && \
22
+ echo 't1 = time.time()' >> /app/run.py && \
23
+ echo 'os.system("tar -c -f model.tar.xz -I \\"xz -9e -T0\\" ggml-model-i2_s.gguf")' >> /app/run.py && \
24
+ echo 'log(f"XZ listo ({round(time.time()-t1,1)}s)")' >> /app/run.py && \
25
+ echo 'log("[3/4] Comprimimos con tar.zst...")' >> /app/run.py && \
26
+ echo 't2 = time.time()' >> /app/run.py && \
27
+ echo 'os.system("tar -c -f model.tar.zst --zstd -I \\"zstd -19 -T0\\" ggml-model-i2_s.gguf")' >> /app/run.py && \
28
+ echo 'log(f"ZSTD listo ({round(time.time()-t2,1)}s)")' >> /app/run.py && \
29
+ echo 'log("[4/4] Comprimimos con RAR...")' >> /app/run.py && \
30
+ echo 't3 = time.time()' >> /app/run.py && \
31
+ echo 'os.system("rar a -ma5 model.rar ggml-model-i2_s.gguf")' >> /app/run.py && \
32
+ echo 'log(f"RAR listo ({round(time.time()-t3,1)}s)")' >> /app/run.py && \
33
+ echo 'log("Tama帽os finales:")' >> /app/run.py && \
34
+ echo 'os.system("du -h *.gguf *.xz *.zst *.rar")' >> /app/run.py && \
35
+ echo 'log("Servidor HTTP activo en puerto 7860")' >> /app/run.py && \
36
+ echo 'os.system("python3 -m http.server 7860")' >> /app/run.py
37
 
38
  EXPOSE 7860
39
+ CMD ["python3", "/app/run.py"]