dockerizing program
This commit is contained in:
parent
87456b1c40
commit
ce82a8502b
@ -11,3 +11,5 @@ venv/
|
||||
.gitignore
|
||||
data/
|
||||
reports/
|
||||
.aider.model.settings.yml
|
||||
.aider.chat.history.md
|
||||
|
||||
20
Dockerfile
20
Dockerfile
@ -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"]
|
||||
164
requirements.txt
164
requirements.txt
@ -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
|
||||
|
||||
Loading…
Reference in New Issue
Block a user