devops-django-react-task

Backend development workflow

virtualenv env
source env/bin/activate
pip install -r requirements.txt
python manage.py runserver

Frontend development workflow

You are to update your name in ./frontend/components/App.js

npm i
npm start

For deploying

npm run build

It should look like this if successful Screen Shot 2022-11-02 at 19 30 22

Deploying To AWS Instance

Create an AWS instance and run the following code

sudo apt-get update && sudo apt-get upgrade

Create a user

sudo adduser [user account name] sudo chmod -aG sudo [user account name ] to grant user a root privilage

install nginx to your server sudo apt-get install nginx

install docker engine on your Ubuntu instance Docker docker --verion

login to the user account

clone your repo project

Build Docker Image

Description Code
To build docker image docker image build -t [desired image name ] [Dockerfile Location]
To run docker image docker run -d -p [port Id]:[port number] [image name]
To build and run docker yaml file docker compose up -d
To check current docker images running docker ps
To stop docker process docker stop [docker image ID]
To check both active and non active process docker ps -a

Configure Nginx

Description code
To edit Nginx cd /var/www/html

sudo vi /etc/nginx/sites-available/default (To Edit)

server {
   listen 80;
location / {
        proxy_set_header  X-Real-lP $remote_addr;
        proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header  X-Forwarded-Proto $scheme;
        proxy_set_header        Host $host;
        proxy_pass http://0.0.0.0:3000;
}
}