From 874764c3e38352604e1273fe714446498f31cdd7 Mon Sep 17 00:00:00 2001 From: Superredstone Date: Mon, 14 Sep 2026 19:04:27 +0200 Subject: [PATCH] chore: add dockerization --- .dockerignore | 12 ++++++++++++ Dockerfile | 20 ++++++++++++++++++++ README.md | 7 +++++++ requirements.txt | 1 + 4 files changed, 40 insertions(+) create mode 100644 .dockerignore create mode 100644 Dockerfile diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..58dc6e2 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,12 @@ +.git +.gitignore +__pycache__ +*.pyc +*.pyo +*.pyd +.env +venv +.venv +db.sqlite3 +staticfiles +media diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..983c23e --- /dev/null +++ b/Dockerfile @@ -0,0 +1,20 @@ +FROM python:3.12-slim + +ENV PYTHONDONTWRITEBYTECODE=1 +ENV PYTHONUNBUFFERED=1 + +WORKDIR /app + +RUN apt-get update \ + && apt-get install -y --no-install-recommends gcc + +COPY requirements.txt . + +RUN pip install --no-cache-dir --upgrade pip \ + && pip install --no-cache-dir -r requirements.txt + +COPY . . + +EXPOSE 8000 + +CMD ["sh", "-c", "python manage.py migrate && gunicorn patrickcanal_it.wsgi:application --bind 0.0.0.0:8000"] diff --git a/README.md b/README.md index a3b2e63..9cf2051 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,12 @@ # patrickcanal.it +## Docker +Build container +`docker build . -t patrickcanal.it` + +Run docker run +`docker run -p 8000:8000 patrickcanal.it -v "$(pwd)/patrickcanal.it/local_settings.py:/app/patrickcanal.it/local_settings.py" -v "$(pwd)/patrickcanal.it/db.sqlite:/app/db.sqlite"` + ## Required variables ### Portfolio Email variables will be replaced once `django-post_office` will be updated to support django 6.1 email system diff --git a/requirements.txt b/requirements.txt index 46f6091..8121e6b 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,3 +1,4 @@ django djlint django-post_office +gunicorn