meow_book — сервис для обмена фотографиями любимых питомцев. Состоит из бэкенд-приложения на Django и фронтенд-приложения на React. Поддерживает регистрацию и авторизацию, можно добавить нового котика на сайт или изменить существующего, а также просмотреть записи других пользователей.
- Клонировать репозиторий:
git@github.com:CHEDEIV8/meow_book.git
cd kittygram_final/
-
Создать в папке kittygram_final/ файл .env с переменными окружения (см. .env.example).
-
Собрать и запустить докер-контейнеры через Docker Compose:
docker compose up --build
- Создать папку kittygram/ с файлом .env в домашней директории сервера (см. .env.example).
cd ~
mkdir kittygram
nano kittygram/.env
- Настроить в nginx перенаправление запросов на порт 9000:
server {
server_name <...>;
server_tokens off;
location / {
proxy_pass http://127.0.0.1:9000;
}
}
-
Добавить в GitHub Actions следующие секреты:
- DOCKER\_USERNAME - логин от Docker Hub
-
DOCKER_PASSWORD - пароль от Docker Hub
-
SSH_KEY - закрытый ssh-ключ для подключения к серверу
-
SSH_PASSPHRASE - passphrase от этого ключа
-
USER - имя пользователя на сервере
-
HOST - IP-адрес сервера
-
TELEGRAM_TO - ID телеграм-аккаунта для оповещения об успешном деплое
-
TELEGRAM_TOKEN - токен телеграм-бота
-
-
Python 3.10
-
Django
-
Django REST Framework
-
Node.js
-
React
-
Gunicorn
-
Nginx
-
Docker
-
GitHub Actions
Автор проекта: Денис Чередниченко