Skip to content

Gennady-Umikashvili/kittygram_final

Repository files navigation

Описание проекта

Сайт с возможностью публикации фотографий котов и их достижений.

Возможности

  • Публикация и редактирование профиля питомца
  • Размещение фото и достижений котика.

Технологии

  • React
  • Django
  • DRF

Infra

  • Nginx
  • Gunicorn
  • Docker
  • Docker-compose

CI/CD

  • Github Actions

Запуск проекта из образов с Docker hub

Для запуска необходимо на создать папку проекта, например kittygram и перейти в нее:

mkdir kittygram
cd kittygram

В папку проекта скачиваем файл docker-compose.production.yml и запускаем его:

sudo docker compose -f docker-compose.production.yml up

Произойдет скачивание образов, создание и включение контейнеров, создание томов и сети.

Запуск проекта из исходников GitHub

Клонируем себе репозиторий:

git clone git@github.com:Gennady-Umikashvili/kittygram_final.git

Выполняем запуск:

sudo docker compose -f docker-compose.yml up

После запуска: Миграции, сбор статистики

После запуска необходимо выполнить сбор статистики и миграции бэкенда. Статистика фронтенда собирается во время запуска контейнера, после чего он останавливается.

sudo docker compose -f [имя-файла-docker-compose.yml] exec backend python manage.py migrate

sudo docker compose -f [имя-файла-docker-compose.yml] exec backend python manage.py collectstatic

sudo docker compose -f [имя-файла-docker-compose.yml] exec backend cp -r /app/collected_static/. /static/static/

И далее проект доступен на:

http://localhost:9000/

Необходимые переменные окружения

POSTGRES_USER= <Желаемое_имя_пользователя_базы_данных>
POSTGRES_PASSWORD= <Желаемый_пароль_пользователя_базы_данных>
POSTGRES_DB= <Желаемое_имя_базы_данных>
DB_HOST=
DB_PORT= 
SECRET_KEY = 
DEBUG = 

Остановка оркестра контейнеров

В окне, где был запуск Ctrl+С или в другом окне:

sudo docker compose -f docker-compose.yml down

Автор

Геннадий Умикашвили: github