dockerizing program

This commit is contained in:
Bobby 2025-02-20 21:35:47 -08:00
parent 87456b1c40
commit ce82a8502b
3 changed files with 152 additions and 34 deletions

View File

@ -11,3 +11,5 @@ venv/
.gitignore
data/
reports/
.aider.model.settings.yml
.aider.chat.history.md

View File

@ -1,12 +1,26 @@
FROM python:3.9-slim
FROM python:3.11-alpine
WORKDIR /app
RUN apk add --no-cache \
build-base \
wget \
tar \
bash \
libffi-dev \
&& 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 requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY . .
EXPOSE 8501
CMD ["streamlit", "run", "src/streamlit_app.py"]
CMD ["streamlit", "run", "src/streamlit_app.py", "--server.headless=true", "--server.port=8501"]

View File

@ -1,31 +1,133 @@
# Database connector
clickhouse-connect
# Basic data libraries
pandas
numpy
# Environment variables
python-dotenv
# Testing
pytest
# Time zone handling
pytz
tzdata
# Real-time data
yfinance
# Web interface
streamlit>=1.24.0
plotly>=5.13.0
streamlit-option-menu>=0.3.2
# Backtesting
backtesting
pandas-ta
# Technical Analysis
ta
aider-chat==0.74.2
aiohappyeyeballs==2.4.6
aiohttp==3.11.12
aiosignal==1.3.2
altair==5.5.0
annotated-types==0.7.0
anyio==4.8.0
async-timeout==5.0.1
attrs==25.1.0
backoff==2.2.1
backtesting==0.6.1
beautifulsoup4==4.13.3
blinker==1.9.0
bokeh==3.4.3
cachetools==5.5.1
certifi==2025.1.31
cffi==1.17.1
charset-normalizer==3.4.1
click==8.1.8
clickhouse-connect==0.8.15
ConfigArgParse==1.7
contourpy==1.3.0
diff-match-patch==20241021
diskcache==5.6.3
distro==1.9.0
exceptiongroup==1.2.2
filelock==3.17.0
flake8==7.1.1
frozendict==2.4.6
frozenlist==1.5.0
fsspec==2025.2.0
gitdb==4.0.12
GitPython==3.1.44
grep-ast==0.5.0
h11==0.14.0
html5lib==1.1
httpcore==1.0.7
httpx==0.28.1
huggingface-hub==0.28.1
idna==3.10
importlib_metadata==7.2.1
importlib_resources==6.5.2
iniconfig==2.0.0
Jinja2==3.1.5
jiter==0.8.2
joblib==1.4.2
json5==0.10.0
jsonschema==4.23.0
jsonschema-specifications==2024.10.1
litellm==1.60.6
lxml==5.3.1
lz4==4.4.3
markdown-it-py==3.0.0
MarkupSafe==3.0.2
mccabe==0.7.0
mdurl==0.1.2
mixpanel==4.10.1
monotonic==1.6
multidict==6.1.0
multitasking==0.0.11
narwhals==1.26.0
networkx==3.2.1
numpy==1.26.4
openai==1.61.1
packaging==24.2
pandas==2.2.3
pandas_ta==0.3.14b0
pathspec==0.12.1
peewee==3.17.9
pexpect==4.9.0
pillow==10.4.0
platformdirs==4.3.6
plotly==6.0.0
pluggy==1.5.0
posthog==3.11.0
prettytable==3.14.0
prompt_toolkit==3.0.50
propcache==0.2.1
protobuf==5.29.3
psutil==6.1.1
ptyprocess==0.7.0
pyarrow==19.0.0
pycodestyle==2.12.1
pycparser==2.22
pydantic==2.10.6
pydantic_core==2.27.2
pydeck==0.9.1
pydub==0.25.1
pyflakes==3.2.0
Pygments==2.19.1
pypandoc==1.15
pyperclip==1.9.0
pytest==8.3.4
python-dateutil==2.9.0.post0
python-dotenv==1.0.1
pytz==2025.1
PyYAML==6.0.2
referencing==0.36.2
regex==2024.11.6
requests==2.32.3
rich==13.9.4
rpds-py==0.22.3
scipy==1.13.1
six==1.17.0
smmap==5.0.2
sniffio==1.3.1
sounddevice==0.5.1
soundfile==0.13.1
soupsieve==2.6
streamlit==1.42.0
streamlit-option-menu==0.4.0
ta-lib==0.6.3
tenacity==9.0.0
tiktoken==0.8.0
tokenizers==0.19.1
toml==0.10.2
tomli==2.2.1
tornado==6.4.2
tqdm==4.67.1
tree-sitter==0.21.3
tree-sitter-languages==1.10.2
typing_extensions==4.12.2
tzdata==2025.1
urllib3==2.3.0
watchdog==6.0.0
watchfiles==1.0.4
wcwidth==0.2.13
webencodings==0.5.1
xyzservices==2025.1.0
yarl==1.18.3
yfinance==0.2.52
zipp==3.21.0
zstandard==0.23.0