Это сайт сети ресторанов Star Burger. Здесь можно заказать превосходные бургеры с доставкой на дом.
Сеть Star Burger объединяет несколько ресторанов, действующих под единой франшизой. У всех ресторанов одинаковое меню и одинаковые цены. Просто выберите блюдо из меню на сайте и укажите место доставки. Мы сами найдём ближайший к вам ресторан, всё приготовим и привезём.
На сайте есть три независимых интерфейса. Первый — это публичная часть, где можно выбрать блюда из меню, и быстро оформить заказ без регистрации и SMS.
Второй интерфейс предназначен для менеджера. Здесь происходит обработка заказов. Менеджер видит поступившие новые заказы и первым делом созванивается с клиентом, чтобы подтвердить заказ. После оператор выбирает ближайший ресторан и передаёт туда заказ на исполнение. Там всё приготовят и сами доставят еду клиенту.
Третий интерфейс — это админка. Преимущественно им пользуются программисты при разработке сайта. Также сюда заходит менеджер, чтобы обновить меню ресторанов Star Burger.
Скачайте код:
git clone [email protected]:VneTraffiqua/StarBurger.gitУстановите Docker и Docker-compose. Ссылка на инструкцию.
Создайте файл .env в директории /backend рядом с файлом manage.py со следующими настройками:
SECRET_KEY- cекретный ключ джанго (пример:django-insecure-0if40nf4n11111)YANDEX_TOKEN- API ключ от яндекс гео-кодера(пример:3f5d3d66-4180-482f-b2c1-467d7233a111). Получить его можно в кабинете разработчикаDEBUG- hежим отладки (True/False)ROLLBAR_ENVIROMENT- окружение rollbar, можно указатьproductionROLLBAR_TOKEN- токен rollbar (пример:8b98e770028c46b1b63198b206f7a111)DB_URL- url адрес базы данных в PostgreSQL. Cформируйте url адрес вашей базы данных по шаблону:postgres://имя пользователя базы данных:пароль базы данных@db:порт/название базы данных(пример:postgres://root:password@db:5432/starburger)POSTGRES_USERимя пользователя базы данныхDB_PASS- Пароль от базы данныхPOSTGRES_DB- название базы данныхPOSTGRES_PASSWORD- пароль базы данныхPGDATA- путь хранения для базы данных (пример:/var/lib/postgresql/data/pgdata)
Перейдите в директорию проекта и запустите docker-compose.dev.yml командой:
docker-compose -f docker-compose.dev.yml up -d
Сайт будет доступен на локальном хосте.
Перейдите в директорию проекта и запустите docker-compose.prod.yml командой:
docker-compose -f docker-compose.prod.yml up -d
Далее, установите сертификат командой:
docker-compose -f docker-compose.prod.yml run --rm certbot certonly --webroot --webroot-path /var/www/certbot/ -d burger-em.ru
Перезапустите Nginx:
docker-compose restart
или
docker-compose -f docker-compose.prod.yml exec nginx nginx -s reload
Обновляйте сертификаты безопасности
Сертификаты Let's Encrypt действительны в течение трех месяцев, после чего необходимо их продлить. Чтобы обновить сертификаты, выполните следующую команду:
docker-compose -f docker-compose.prod.yml run --rm certbot renew
Сайт доступен по адресу burger-em.ru
======================================================================