diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..0556359 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,33 @@ +# pull official base image +FROM python:3.10-slim-buster + +# set work directory +WORKDIR /usr/src/app + +# set environment variable +ENV PYTHONDONTWRITEBYTECODE 1 +ENV PYTHONUNBUFFERED 1 + +# copy project files +COPY . /usr/src/app/ + +# install system dependencies +RUN apt-get update +#RUN apt-get install -y gcc pkg-config default-libmysqlclient-dev python-dev vim systemd +RUN apt-get install -y gcc pkg-config default-libmysqlclient-dev python-dev +RUN apt-get clean + +# install python dependencies +RUN pip install --upgrade pip +RUN pip install -r requirements.txt + +# collect static files +# RUN python manage.py collectstatic --noinput + +# expose the port +EXPOSE 8000 + +# command to run +CMD ["gunicorn", "--workers=3", "--bind=0.0.0.0:8000", "ansible_prj.wsgi:application"] + + diff --git a/requirements.txt b/requirements.txt index 626854c..decd3a9 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,23 +1,30 @@ -ansible==10.7.0 -ansible-core==2.17.7 asgiref==3.8.1 +certifi==2025.1.31 cffi==1.17.1 +charset-normalizer==3.4.1 +coreapi==2.3.3 +coreschema==0.0.4 cryptography==45.0.2 Django==4.2.14 django-cors-headers==4.7.0 -djangorestframework==3.15.2 +djangorestframework==3.16.0 djangorestframework_simplejwt==5.5.0 drf-yasg==1.21.10 +gunicorn==20.1.0 +idna==3.10 inflection==0.5.1 +itypes==1.2.0 Jinja2==3.1.6 MarkupSafe==3.0.2 +mysqlclient==2.2.7 packaging==25.0 pycparser==2.22 PyJWT==2.9.0 python-dotenv==1.0.1 pytz==2025.2 PyYAML==6.0.2 -resolvelib==1.0.1 +requests==2.32.3 sqlparse==0.5.3 typing_extensions==4.13.2 uritemplate==4.1.1 +urllib3==2.4.0