Skip to content

Проект Yatube - cоциальная сеть для авторов (WEB app + REST API)

License

Notifications You must be signed in to change notification settings

mityasun/yatube

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

55 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Test and push to Docker Hub

Проект Yatube - социальная сеть для авторов.

Здесь вы можете создавать свои записи, добавлять их в сообщества, подписываться на авторов и комментировать их записи.

Возможности проекта:

  • Регистрация с расширенным профилем и управление им (переопределение модели User с помощью AbstractUser).
  • Публикация записей с изображениями.
  • Публикация записей в сообщества.
  • Комментарии к записям других авторов.
  • Подписка на других авторов.
  • Лента с записями, на которых оформлена подписка.
  • Template tags, отображающие самые обсуждаемые записи, последние записи и пр.
  • Для проекта написаны тесты Unittest.

Возможности API:

  • Получение, создание, обновление, удаление записей.
  • Получение, создание, обновление, удаление комментариев.
  • Получение списка сообществ и их информации.
  • Получение списка подписок и создание подписки на авторов.
  • Получение, обновление и проверка токена авторизации (JWT).

Подробней про API по ссылке
Ссылка откроется после развертывания проекта.

Технологии

Python Django Django Bootstrap Jquery

Как запустить проект:

Клонировать репозиторий и перейти в него в терминале:

git clone https://github.com/mityasun/yatube.git

Перейдите в директорию:

cd yatube/yatube/

Cоздать образ из Docker файла:

docker build -t yatube .

Перейдите в директорию с настройками Docker-compose:

cd yatube/infra/

Создать файл .env в этой директории пропишите в нем настройки БД:

SECRET_KEY=*Секретный ключ Django*
DEBUG=*False для прода и True для тестов*
ALLOWED_HOSTS=*Список разрешенных хостов*
DB_NAME=*Имя БД*
POSTGRES_USER=*Имя пользователя БД*
POSTGRES_PASSWORD=*Пароль пользователя БД*
DB_HOST=db
DB_PORT=5432

Соберите образ из файла Docker-compose:

docker-compose up -d --build

Примените миграции:

docker-compose exec web python manage.py migrate

Соберите статику:

docker-compose exec web python manage.py collectstatic --no-input

Заполнить базу данными из копии:

docker-compose exec web python manage.py loaddata fixtures.json

Создайте суперпользователя:

docker-compose exec web python manage.py createsuperuser

Автор проекта:

Петухов Артем Github

About

Проект Yatube - cоциальная сеть для авторов (WEB app + REST API)

Topics

Resources

License

Stars

Watchers

Forks