Panacea ICONO commited on
Commit
eb2efb7
·
1 Parent(s): 4bda333

Fix app and fibonacci modules, Dockerfile and installer

Browse files
Files changed (2) hide show
  1. Dockerfile +12 -1
  2. fibonacci.py +10 -0
Dockerfile CHANGED
@@ -5,7 +5,7 @@ FROM python:3.11-slim AS builder
5
 
6
  # Instalar herramientas necesarias solo en el stage de build
7
  RUN apt-get update \
8
- && apt-get install -y --no-install-recommends build-essential gcc libffi-dev \
9
  && rm -rf /var/lib/apt/lists/*
10
 
11
  WORKDIR /app
@@ -15,6 +15,13 @@ COPY requirements.txt ./requirements.txt
15
  RUN python -m pip install --upgrade pip setuptools wheel \
16
  && python -m pip install --no-cache-dir --prefix=/install -r requirements.txt
17
 
 
 
 
 
 
 
 
18
  # --- Final minimal image ---
19
  FROM python:3.11-slim
20
 
@@ -30,6 +37,10 @@ WORKDIR /app
30
  # Copiar los paquetes instalados desde el builder al entorno de runtime
31
  COPY --from=builder /install /usr/local
32
 
 
 
 
 
33
  # Copiar código y asignar al user no-root
34
  COPY --chown=user:user . /app
35
 
 
5
 
6
  # Instalar herramientas necesarias solo en el stage de build
7
  RUN apt-get update \
8
+ && apt-get install -y --no-install-recommends build-essential gcc libffi-dev wget ca-certificates tar \
9
  && rm -rf /var/lib/apt/lists/*
10
 
11
  WORKDIR /app
 
15
  RUN python -m pip install --upgrade pip setuptools wheel \
16
  && python -m pip install --no-cache-dir --prefix=/install -r requirements.txt
17
 
18
+ # Descargar y extraer openvscode-server en el stage de build (no queda en la imagen final si no se copia)
19
+ RUN wget https://github.com/gitpod-io/openvscode-server/releases/download/openvscode-server-v1.101.2/openvscode-server-v1.101.2-linux-x64.tar.gz -O /tmp/openvscode-server.tar.gz \
20
+ && tar -xzf /tmp/openvscode-server.tar.gz -C /opt \
21
+ && rm /tmp/openvscode-server.tar.gz \
22
+ && mv /opt/openvscode-server-v1.101.2-linux-x64 /opt/openvscode-server \
23
+ && chown -R 1000:1000 /opt/openvscode-server
24
+
25
  # --- Final minimal image ---
26
  FROM python:3.11-slim
27
 
 
37
  # Copiar los paquetes instalados desde el builder al entorno de runtime
38
  COPY --from=builder /install /usr/local
39
 
40
+ # Copiar openvscode desde el builder (ya está listo en /opt/openvscode-server)
41
+ COPY --from=builder /opt/openvscode-server /opt/openvscode-server
42
+ RUN chown -R 1000:1000 /opt/openvscode-server || true
43
+
44
  # Copiar código y asignar al user no-root
45
  COPY --chown=user:user . /app
46
 
fibonacci.py ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ def fibonacci(n: int):
2
+ """Devuelve una lista con los primeros n términos de Fibonacci."""
3
+ if n <= 0:
4
+ return []
5
+ if n == 1:
6
+ return [0]
7
+ seq = [0, 1]
8
+ for _ in range(2, n):
9
+ seq.append(seq[-1] + seq[-2])
10
+ return seq[:n]