728x90
반응형

react 3

[Nginx, React, Docker] 웹서버와 웹 프로젝트 컨테이너 분리하기

우선 분리한 이유기존에는 react + nginx를 합쳐서 프론트엔드 빌드가 끝나면 nginx를 실행하는 방식을 사용했다. 이렇게 하게 되면 불편한 점이: 프론트엔드 빌드가 실패하면 그대로 전체 서버가 죽어버린다.프론트엔드 빌드는 실패해도 기존의 정적 파일을 서빙하는데기존 컨테이너 방식으로는 nginx가 프엔 빌드 실패 시 실행을 안 해서 서빙을 못 한다.게다가 nginx가 리버스 프록싱도 같이 하기 때문에 백엔드 서버 게이트웨이가 죽어버리면................. 이런 이유로 분리했다. 기존의 docker-compose.yml의 client 부분services: client: build: context: ./client dockerfile: Dockerfile c..

[Docker, AWS, Django, Nginx, Gunicorn, React, MySQL] AWS EC2 이용해서 서버 세팅하기 (2) - docker-compose.yml, 프리티어로 AWS 인스턴스 생성

글의 길이가 길어서 2개의 게시글로 나누었습니다. (1)편 https://yourhyeony.tistory.com/61 5. docker-compose.yml 작성 version: '3' services: db: # MySQL 컨테이너 image: mysql:8.0.22 # MySQL 8.0.22 이미지 사용 container_name: my01 # 컨테이너 이름 지정 command: mysqld --character-set-server=utf8 --collation-server=utf8_general_ci --default-authentication-plugin=mysql_native_password # 캐릭터셋 유니코드로 변경하고 비밀번호 관련 설정... ports: - "3306:3306" # 33..

[Docker, AWS, Django, Nginx, Gunicorn, React, MySQL] AWS EC2 이용해서 서버 세팅하기 (1) - db, nginx, dockerfile 작성

1. 사용한 기술 스택 및 파일 구조 기술 스택 프론트는 React 백엔드는 Django 미들웨어로 Gunicorn을 사용하고, 웹서버로 Nginx Docker로 컨테이너화한 뒤 AWS에서 EC2로 배포했습니다. 파일 구조 우선 이것은 나의 프로젝트 파일 구조! client는 프론트엔드(리액트), nginx는 서버 설정 파일, db는 데이터베이스 설정 파일(스키마 생성만 있음), server는 백엔드(장고) 파일이다. 디렉토리의 세부 구조이다. server 폴더 안은 이렇게 이루어져 있고, key.json은 시크릿키랑 api키를 모아두었다. requirements.txt는 config 폴더 안에 넣어두었다. 우선 도커파일은 /server 에만 작성했다. 모델 설치하면서 필요한 작업이 늘어났기 때문이다. ..

728x90
반응형