From 0e40423abae579af0af76f15c986520f1af14082 Mon Sep 17 00:00:00 2001 From: "nabijonovdavronbek619@gmail.com" Date: Sat, 6 Dec 2025 19:35:36 +0500 Subject: [PATCH] fix docker compose file and docker --- .dockerignore | 16 +++++++ .env | 12 +++++ .env.example | 12 +++++ .gitignore | 2 + content/__pycache__/admin.cpython-313.pyc | Bin 1386 -> 1386 bytes content/admin.py | 2 +- db.sqlite3 | Bin 151552 -> 0 bytes docker-compose.yml | 52 +++++++++++++++++++++ docker/Dockerfile.nginx | 3 ++ docker/Dockerfile.web | 13 ++++++ portfolio_admin/settings.py | 35 ++++++++++---- requirements.txt | 8 ++++ resources/layout/nginx.conf | 53 ++++++++++++++++++++++ resources/scripts/entrypoint.sh | 7 +++ 14 files changed, 206 insertions(+), 9 deletions(-) create mode 100644 .dockerignore create mode 100644 .env create mode 100644 .env.example create mode 100644 .gitignore delete mode 100644 db.sqlite3 create mode 100644 docker-compose.yml create mode 100644 docker/Dockerfile.nginx create mode 100644 docker/Dockerfile.web create mode 100644 requirements.txt create mode 100644 resources/layout/nginx.conf create mode 100644 resources/scripts/entrypoint.sh diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..ab0eb81 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,16 @@ +venv +__pycache__ +*.pyc +*.pyo +*.pyd +*.sqlite3 +db.sqlite3 +.pytest_cache +.mypy_cache +.cache +.venv +.DS_Store +.git +*.egg-info +dist +build diff --git a/.env b/.env new file mode 100644 index 0000000..50a1fa2 --- /dev/null +++ b/.env @@ -0,0 +1,12 @@ +# Local Development Environment +DEBUG=True +SECRET_KEY=django-insecure-r616b$_bknw-2nh96gbuwe%2l-2o@g3uui747t8jz&nwp&xe_m +ALLOWED_HOSTS=localhost,127.0.0.1 + +# Database Configuration (Postgres) +DB_ENGINE=postgresql +DB_NAME=portfolio_admin +DB_USER=postgres +DB_PASSWORD=postgres +DB_HOST=db +DB_PORT=5432 diff --git a/.env.example b/.env.example new file mode 100644 index 0000000..0871b7e --- /dev/null +++ b/.env.example @@ -0,0 +1,12 @@ +# Django Settings +DEBUG=False +SECRET_KEY=your-secret-key-here-change-in-production +ALLOWED_HOSTS=localhost,127.0.0.1,yourdomain.com + +# Database Configuration (Postgres) +DB_ENGINE=postgresql +DB_NAME=portfolio_admin +DB_USER=postgres +DB_PASSWORD=postgres +DB_HOST=db +DB_PORT=5432 diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..1cc080e --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +venv/ +products/ \ No newline at end of file diff --git a/content/__pycache__/admin.cpython-313.pyc b/content/__pycache__/admin.cpython-313.pyc index 5ef3b0764c586b589609631fd6b667576bd887af..971d0e03ae7c694cb1e9ea7ffcc300e1c11c5785 100644 GIT binary patch delta 22 ccmaFG^@@x4GcPX}0}!0qWRy8`BX2A#08(uR-v9sr delta 22 ccmaFG^@@x4GcPX}0}wbg7-i1d$Q#QF0891;A^-pY diff --git a/content/admin.py b/content/admin.py index 4a6ca8f..fb4b459 100644 --- a/content/admin.py +++ b/content/admin.py @@ -18,4 +18,4 @@ class ProductAdmin(admin.ModelAdmin): @admin.register(ContactMessage) class ContactAdmin(admin.ModelAdmin): list_display = ('name', 'phone', 'product_name', 'created_at') - search_fields = ('name', 'phone', 'product_name') + search_fields = ('name', 'phone', 'product_name') \ No newline at end of file diff --git a/db.sqlite3 b/db.sqlite3 deleted file mode 100644 index d8a32c918e70cdd76e236278070359be80acb733..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 151552 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