blackopsrepl/portfolio-optimization-python
1
1# Use Python 3.12 base image
2FROM python:3.12
3
4# Install JDK 21 (required for solverforge-legacy)
5RUN apt-get update && \
6 apt-get install -y wget gnupg2 && \
7 wget -O- https://packages.adoptium.net/artifactory/api/gpg/key/public | gpg --dearmor > /usr/share/keyrings/adoptium-archive-keyring.gpg && \
8 echo "deb [signed-by=/usr/share/keyrings/adoptium-archive-keyring.gpg] https://packages.adoptium.net/artifactory/deb bookworm main" > /etc/apt/sources.list.d/adoptium.list && \
9 apt-get update && \
10 apt-get install -y temurin-21-jdk && \
11 apt-get clean && \
12 rm -rf /var/lib/apt/lists/*
13
14# Copy application files
15COPY . .
16
17# Install the application
18RUN pip install --no-cache-dir -e .
19
20# Expose port 8080
21EXPOSE 8080
22
23# Run the application
24CMD ["run-app"]
25 