FROM ubuntu:jammy-20260217
ENV DEBIAN_FRONTEND=noninteractive
# System dependencies
RUN apt-get update && \
apt-get install -y --no-install-recommends \
ca-certificates \
curl \
python3 \
python3-dev \
python3-venv \
build-essential && \
rm -rf /var/lib/apt/lists/*
# Create a working directory
WORKDIR /workspace
# Install Python dependencies (separate to leverage caching)
COPY inference/requirements.txt /workspace/inference/requirements.txt
RUN python3 -m pip install --upgrade pip
RUN python3 -m pip install -r /workspace/inference/requirements.txt
# Copy the repository
COPY . /workspace
# Optional: display Python and torch versions to verify environment
RUN python3 -c "import torch, sys; print('python', sys.version); print('torch', torch.__version__)"
ENV PYTHONUNBUFFERED=1
# Default command: show help message about how to run
CMD ["bash","-lc","echo 'Environment ready. To run inference, use: python3 inference/generate.py --ckpt-path <path> --config <path>' && exec bash"]
__pycache__ *.pyc *.pyo *.pyd *.swp *.swo *.log venv/ env/ .IPython/ .env/ .env/** .git/ build/ dist/ */__pycache__/ *.egg-info/ *.egg .dockerignore Dockerfile README.md README_WEIGHTS.md figures/ *.pt *.safetensors inference/__pycache__
Concerns: Missing installation of python3-pip; the following RUN commands will fail: 'python3 -m pip install --upgrade pip' and 'python3 -m pip install -r /workspace/inference/requirements.txt' because pip is not installed on the Ubuntu base image., No explicit guarantee that torch is installed; the build includes a RUN that imports torch, which will fail if torch is not included in inference/requirements.txt., FROM image tag 'ubuntu:jammy-20260217' may be non-standard or ephemeral; ensure this tag exists in the registry used for builds, otherwise FROM may fail.
FROM ubuntu:jammy-20260217
ENV DEBIAN_FRONTEND=noninteractive
# System dependencies
RUN apt-get update && \
apt-get install -y --no-install-recommends \
ca-certificates \
curl \
python3 \
python3-dev \
python3-venv \
python3-pip \
build-essential && \
rm -rf /var/lib/apt/lists/*
# Create a working directory
WORKDIR /workspace
# Install Python dependencies (separate to leverage caching)
COPY inference/requirements.txt /workspace/inference/requirements.txt
RUN python3 -m pip install --upgrade pip
RUN python3 -m pip install -r /workspace/inference/requirements.txt
# Copy the repository
COPY . /workspace
# Optional: display Python and torch versions to verify environment
RUN python3 -c "import torch, sys; print('python', sys.version); print('torch', torch.__version__)"
ENV PYTHONUNBUFFERED=1
# Default command: show help message about how to run
CMD ["bash","-lc","echo 'Environment ready. To run inference, use: python3 inference/generate.py --ckpt-path <path> --config <path>' && exec bash"]
Concerns: The build-time step runs a Python command that imports torch to print its version. If inference/requirements.txt does not include torch, the image build may fail. Ensure torch (or the intended packages) are listed in requirements.txt., Using a specific base image tag like ubuntu:jammy-20260217 may be ephemeral if the tag is no longer available in the registry; verify the tag exists in your build context., The container defaults to an interactive shell (CMD with exec bash). For automated smoke testing, consider a more lightweight default command or ensure tests override entrypoint as demonstrated.
Smoke [PASS]: test -d /workspace && echo 'workspace exists' && ls -1 /workspace | head -n 5
Smoke [PASS]: python3 --version
Smoke [FAIL]: python3 -c "import importlib.util; print('torch_available=', importlib.util.find_spec('torch') is not None)
Output: sh: 1: Syntax error: Unterminated quoted stringFROM ubuntu:jammy-20260217
ENV DEBIAN_FRONTEND=noninteractive
# System dependencies
RUN apt-get update && \
apt-get install -y --no-install-recommends \
ca-certificates \
curl \
python3 \
python3-dev \
python3-venv \
python3-pip \
build-essential && \
rm -rf /var/lib/apt/lists/*
# Create a working directory
WORKDIR /workspace
# Install Python dependencies (separate to leverage caching)
COPY inference/requirements.txt /workspace/inference/requirements.txt
RUN python3 -m pip install --upgrade pip
RUN python3 -m pip install -r /workspace/inference/requirements.txt
# Copy the repository
COPY . /workspace
ENV PYTHONUNBUFFERED=1
# Default command: show help message about how to run
CMD ["bash","-lc","echo 'Environment ready. To run inference, use: python3 inference/generate.py --ckpt-path <path> --config <path>' && exec bash"]
Smoke [PASS]: test -f /workspace/inference/generate.py Smoke [PASS]: python3 -V Smoke [PASS]: ls -l /workspace/inference