commit 215f68903bf504d93c13148215c1e5a90a67226d Author: Adib Pratama Date: Wed Sep 20 20:03:16 2023 +0700 Initial commit diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..c232400 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +python.zip diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..7d1dc7d --- /dev/null +++ b/Dockerfile @@ -0,0 +1,11 @@ +FROM amd64/python:3.7.17-bookworm + +WORKDIR /usr/src/app +COPY requirements.txt ./ +RUN apt update +RUN apt install -y zip +RUN mkdir -p ./python +RUN pip install --no-cache-dir -r requirements.txt -t python/ +RUN zip -r python_layer.zip python + +# ENTRYPOINT ["tail", "-f", "/dev/null"] diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..3f2d79b --- /dev/null +++ b/requirements.txt @@ -0,0 +1,3 @@ +pandas +scikit-learn +numpy diff --git a/run.sh b/run.sh new file mode 100644 index 0000000..5893607 --- /dev/null +++ b/run.sh @@ -0,0 +1,20 @@ +#!/bin/bash + +IMAGE_NAME=python_aws_layer.image +CONTAINER_NAME=python_aws_layer.container + +docker buildx build . -t $IMAGE_NAME:latest +# check if container exists +if [ ! "$(docker ps -a -q -f name=$CONTAINER_NAME)" ]; then + # check if it exited + if [ "$(docker ps -aq -f status=exited -f name=$CONTAINER_NAME)" ]; then + # cleanup + docker rm $CONTAINER_NAME + fi + # run your container + docker run --name $CONTAINER_NAME $IMAGE_NAME +fi + +docker cp $CONTAINER_NAME:/usr/src/app/python.zip . +docker stop $CONTAINER_NAME +docker rm $CONTAINER_NAME