Skip to content

Веб-сервис для любителей котиков

Notifications You must be signed in to change notification settings

Lif-a-nova/Kittygram

Repository files navigation

Kittigram

Описание:

Kittygram - веб-сервис для любителей котиков. Вы сможете делиться фотографиями и достижениями своих питомцев, а также посмотреть на других.

Используемые технологии:

image image imageimage imageimageimage

Запуск проекта на сервере:

  1. На GitHub форкнуть и клонировать репозиторий:
    git@github.com:Lif-a-nova/kittygram.git
    
  2. Создать и активировать виртуальное окружение:
    python -m venv venv
    source venv/bin/activate
    
  3. Создать необходимый файл с секретами .env (в корне проекта).
  4. Собрать и сбилдить образы на свой DockerHub (из корня проекта):
    cd frontend
    docker build -t "username"/kittygram_frontend .
    cd ../backend
    docker build -t "username"/kittygram_backend .
    cd ../nginx
    docker build -t "username"/kittygram_gateway .
    
    docker push "username"/kittygram_frontend
    docker push "username"/kittygram_backend
    docker push "username"/kittygram_gateway
    
  5. Развернуть на рабочем сервере ОС на ядре Linux. (В проекте использовалась серверная версия ОС Ubuntu)
  6. На сервере выполнить следующее: -- Nginx: Установить Nginx на сервер:
    sudo apt install nginx -y 
    - изменить настройки с учетом своего ip и проксирования:
    sudo nano /etc/nginx/sites-enabled/default
    - проверить файл конфигурации на ошибки:
    sudo nginx -t 	
    sudo systemctl start nginx
    
    -- Установить и запустит файрвол:
    sudo ufw allow 'Nginx Full'
    sudo ufw allow OpenSSH
    sudo ufw enable
    sudo ufw status 
    
    -- Docker Установить Docker и Docker Compose на сервер:
    sudo apt update
    sudo apt install curl
    curl -fSL https://get.docker.com -o get-docker.sh
    sudo sh ./get-docker.sh
    sudo apt-get install docker-compose-plugin
    
    -- Создать в корне каталога пустую дирректорию проекта:
    sudo mkdir kittygram
    cd kittygram
    - скопировать любым удобным образом 2 файла проекта: 
    docker-compose.production.yml и .env
    
    -- Запустить в режиме «демона» файл docker-compose.production.yml:
    sudo docker compose -f docker-compose.production.yml up -d
    - подождать
    sudo docker compose -f docker-compose.production.yml exec backend python manage.py migrate
    sudo docker compose -f docker-compose.production.yml exec backend python manage.py collectstatic
    sudo docker compose -f docker-compose.production.yml exec backend cp -r /app/collected_static/. /backend_static/static/ 
    
    -- Перезагрузить конфигурацию Nginx:
    sudo systemctl reload nginx
    
  7. Не забыть:
    Пользоваться с удовольствием!
    

About

Веб-сервис для любителей котиков

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published