Skip to content

Commit 2f833f9

Browse files
committed
adding dockerfile, requirements, and docker compose for the dev environment
1 parent cdcc849 commit 2f833f9

File tree

3 files changed

+58
-0
lines changed

3 files changed

+58
-0
lines changed

docker-compose.yaml

+25
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
version: '3'
2+
3+
# creating the default network
4+
networks:
5+
default:
6+
driver: bridge
7+
8+
services:
9+
# creating the development environment service (which is running the jupyter notebook)
10+
dev:
11+
image: e2e-dev:latest
12+
build:
13+
context: ./notebooks
14+
dockerfile: ./dev_Dockerfile
15+
16+
# exposing the port that will be used by MLFlow and Jupyter Notebook
17+
ports:
18+
- "8888:8888"
19+
- "5000:5000"
20+
21+
# setting external volumes
22+
volumes:
23+
- ./credentials.yaml:/e2e-project/credentials.yaml
24+
- ./models:/e2e-project/models/
25+
- ./data:/e2e-project/data/

notebooks/dev_Dockerfile

+20
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# using the lastest version of miniconda as a base for the Docker image
2+
FROM python:3.10.14-slim
3+
4+
# creating the root folder
5+
RUN mkdir -p /e2e-project/notebooks
6+
7+
# copying all the files within this folder to the newly created folder
8+
COPY . /e2e-project/notebooks
9+
10+
# setting the curreting directory to be the folder containing the notebooks
11+
WORKDIR /e2e-project
12+
13+
# updating pip
14+
RUN pip install --no-cache-dir -U pip
15+
16+
# installing requirements
17+
RUN pip install -r notebooks/requirements_dev.txt
18+
19+
# running the conda notebook
20+
CMD ["jupyter", "notebook", "--ip=0.0.0.0", "--port=8888", "--no-browser", "--allow-root"]

notebooks/requirements_dev.txt

+13
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
catboost==1.2.5
2+
joblib==1.3.2
3+
lightgbm==4.5.0
4+
matplotlib==3.6.3
5+
mlflow==2.15.1
6+
numpy==1.22.3
7+
optuna==3.6.1
8+
pandas==1.5.2
9+
scikit_learn==1.3.2
10+
seaborn==0.13.2
11+
xgboost==2.1.1
12+
boto3==1.35.0
13+
jupyter==1.0.0

0 commit comments

Comments
 (0)