making docker multi arch support
This commit is contained in:
parent
ae34a80301
commit
8dbf51107f
33
Dockerfile
33
Dockerfile
@ -1,38 +1,15 @@
|
||||
# Use Alpine for a smaller image
|
||||
FROM python:3.11-alpine
|
||||
FROM python:3.11-slim
|
||||
|
||||
# Set working directory
|
||||
WORKDIR /app
|
||||
|
||||
# Install build dependencies for TA-Lib
|
||||
RUN apk add --no-cache \
|
||||
build-base \
|
||||
wget \
|
||||
tar \
|
||||
bash \
|
||||
libffi-dev
|
||||
RUN apt-get update && apt-get install -y \
|
||||
build-essential \
|
||||
libta-lib-dev \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Download, extract, and compile TA-Lib (ARM compatible)
|
||||
RUN wget http://prdownloads.sourceforge.net/ta-lib/ta-lib-0.4.0-src.tar.gz \
|
||||
&& tar -xvzf ta-lib-0.4.0-src.tar.gz \
|
||||
&& cd ta-lib \
|
||||
&& ./configure --prefix=/usr \
|
||||
&& make \
|
||||
&& make install \
|
||||
&& cd .. \
|
||||
&& rm -rf ta-lib ta-lib-0.4.0-src.tar.gz
|
||||
|
||||
# Copy the requirements file first (for caching layers)
|
||||
COPY requirements.txt .
|
||||
|
||||
# Install Python dependencies, including `ta-lib`
|
||||
RUN pip install --no-cache-dir -r requirements.txt
|
||||
|
||||
# Copy the rest of the project
|
||||
COPY . .
|
||||
|
||||
# Expose Streamlit's default port
|
||||
EXPOSE 8501
|
||||
|
||||
# Run Streamlit in headless mode
|
||||
CMD ["streamlit", "run", "src/streamlit_app.py", "--server.headless=true", "--server.port=8501"]
|
||||
Loading…
Reference in New Issue
Block a user