diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml
index 9bbf57a..8d81fbc 100644
--- a/.github/workflows/main.yml
+++ b/.github/workflows/main.yml
@@ -1,4 +1,4 @@
-name: Bookinn-app workflow
+name: Bookinn workflow
on: [push]
@@ -13,7 +13,7 @@ jobs:
- name: Set up Python
uses: actions/setup-python@v4
with:
- python-version: 3.9
+ python-version: 3.11
- name: Install dependencies
run: |
diff --git a/README.md b/README.md
index 399cc9c..7d408e5 100644
--- a/README.md
+++ b/README.md
@@ -1,5 +1,143 @@
-# bookinn
+
+
+## BookInn
+
+API сервис для бронирования номеров
[](https://github.com/dmsnback/bookinn/actions/workflows/main.yml)
-Сервис бронирования номеров в отеле
+
+- [Описание](#Описание)
+- [Технологии](#Технологии)
+- [Основные ресурсы](#Ресурсы)
+- [Шаблон заполнения .env-файла](#Шаблон)
+- [Запуск проекта на локальной машине](#Запуск)
+- [Автор](#Автор)
+
+
+
+### Описание
+
+Сервис — REST API для бронирования номеров в отеле.
+Реализован на Django + Django REST Framework, используется Djoser для аутентификации (JWT), drf-spectacular для документации.
+
+```python
+Проект адаптирован для использования PostgreSQL и развёртывания в контейнерах Docker.
+```
+
+> [Вернуться в начало](#Начало)
+
+
+### Технологии
+
+[](https://www.python.org)
+
+[](https://www.django-rest-framework.org)
+[](https://www.docker.com)
+[](https://www.postgresql.org)
+[](https://github.com/features/actions)
+[](https://nginx.org/ru/)
+[](https://gunicorn.org)
+
+> [Вернуться в начало](#Начало)
+
+
+
+### Основные ресурсы
+
+- `/api/v1/rooms/` — CRUD и список номеров
+- `/api/v1/room_type/` — типы номеров
+- `/api/v1/bookings/` — бронирования (создание/обновление/просмотр)
+- `/api/v1/room_images/` — загрузка фото номера
+- `/api/v1/auth/` — djoser (регистрация, логин, токены)
+
+> [Вернуться в начало](#Начало)
+
+
+
+### Шаблон заполнения .env-файла, расположен по пути infra/.env
+
+> в settings.py указаны дефолтные значения для переменных из env-файла
+
+```python
+SECRET_KEY = 'Ваш секретный ключ'
+
+DB_ENGINE=django.db.backends.postgresql # указываем, что работаем с postgresql
+DB_NAME=postgres # имя базы данных
+POSTGRES_USER=postgres # логин для подключения к базе данных
+POSTGRES_PASSWORD=postgres # пароль для подключения к БД
+DB_HOST=db # название сервиса (контейнера)
+DB_PORT=5432 # порт для подключения к БД
+```
+
+> [Вернуться в начало](#Начало)
+
+
+
+### Запуск проекта на локальной машине
+
+- Склонируйте репозиторий
+
+```python
+git clone git@github.com:dmsnback/bookinn.git
+```
+
+- Переходим в папку с файлом ```docker-compose.yaml```
+
+```python
+cd infra
+```
+
+- Запускаем Docker контейнеры
+
+```python
+docker-compose up -d --build
+```
+
+- Выполняем миграции
+
+```python
+docker-compose exec backend python manage.py migrate
+```
+
+- Создаём суперюзера
+
+```python
+docker-compose exec backend python manage.py createsuperuser
+```
+
+- Собираем статику
+
+```python
+docker-compose exec backend python manage.py collectstatic --no-input
+```
+
+- Наполняем базу данных содержимым из файла ```rooms_fixture.json```:
+
+> В базу добавится 10 номеров.
+
+```python
+docker-compose exec backend python manage.py loaddata data/rooms_fixture.json
+```
+
+> __Проект станет доступен по адресу:__
+
+[http://localhost/api/v1/](http://localhost/api/v1/)
+
+> __Админка станет доступна по адресу:__
+
+[http://localhost/admin/](http://localhost/admin/)
+
+> __Документация к API будет доступна по адресу:__
+
+[http://localhost/api/docs/](http://localhost/api/docs/)
+
+> [Вернуться в начало](#Начало)
+
+
+
+### Автор
+
+- [Титенков Дмитрий](https://github.com/dmsnback)
+
+> [Вернуться в начало](#Начало)
diff --git a/backend/bookinn/settings.py b/backend/bookinn/settings.py
index be6f1dd..429a55e 100644
--- a/backend/bookinn/settings.py
+++ b/backend/bookinn/settings.py
@@ -66,8 +66,8 @@
ALLOWED_HOSTS = ["*"]
CSRF_TRUSTED_ORIGINS = [
- "http://localhost:8000",
- "http://127.0.0.1:8000",
+ "http://localhost",
+ "http://127.0.0.1",
]
INSTALLED_APPS = [
diff --git a/backend/wait-for-it.sh b/backend/wait-for-it.sh
index d990e0d..237610a 100755
--- a/backend/wait-for-it.sh
+++ b/backend/wait-for-it.sh
@@ -1,5 +1,4 @@
-#!/usr/bin/env bash
-# Use this script to test if a given TCP host/port are available
+# Скрипт ждёт, пока база на станет доступна, а потом запускает Django.
WAITFORIT_cmdname=${0##*/}
diff --git a/infra/.env.example b/infra/.env.example
new file mode 100644
index 0000000..f455fd1
--- /dev/null
+++ b/infra/.env.example
@@ -0,0 +1,8 @@
+SECRET_KEY = 'SuperSecrettKey'
+
+DB_ENGINE=django.db.backends.postgresql
+DB_NAME=postgres
+POSTGRES_USER=postgres
+POSTGRES_PASSWORD=postgres
+DB_HOST=db
+DB_PORT=5432
\ No newline at end of file
diff --git a/infra/docker-compose.yaml b/infra/docker-compose.yaml
index 438c3a2..219f507 100644
--- a/infra/docker-compose.yaml
+++ b/infra/docker-compose.yaml
@@ -24,7 +24,7 @@ services:
nginx:
image: nginx:stable-alpine
ports:
- - "8000:80"
+ - "80:80"
volumes:
- static_value:/app/static/
- media_value:/app/media/