[Docker] ① docker와 AWS를 이용한 Web Application 배포

2021. 8. 1. 09:00System 작업실/Docker

728x90
반응형

안녕하세요? 주니하랑 입니다.

오늘은 Docker와 AWS 그리고, travis를 이용한 Web Web 배포를 해보도록 하겠습니다!

이 피드는 인프런 - 따라하며 배우는 도커와 CI환경 강의를 듣고, 작성 되었음을 알려 드립니다.

본 피드는 Potainer를 이용한 Docker 관리 연장이지만, 내용이 다르기 때문에 이 점 참고 부탁 드립니다!

바로 시작 해 보겠습니다!

 


 

 

✔ 목차

VMWare를 통한 Ubuntu 20.04 LTS 설치

Docker와 Portainer 설치

Portainer를 이용한 nginx 설치

[docker] Portainer를 이용한 tomcat 설치[docker] Portainer를 이용한 tomcat 설치

[docker] Portainer를 이용한 Maria DB 설치

[Docker] ① docker와 AWS를 이용한 Web Application 배포 

 

 


 

 

📌 시작하기 전에


시작하기 전에 우리가 배포할 Web Application Source Code는 저의 Git Hub에서 내려 받으실 수 있습니다.

본 피드는 개발이 아닌 배포를 위한 피드이기 때문에 개발 관련 내용은 기재하지 않았습니다.

 

 

 

📌 Docker를 이용한 Web Application 만들기


Web Application은 Fonrt End와 Back End 그리고, DB 등 많은 것들을 필요로 하는 것이에요.

이번 피드에서 그런 내용들을 배포하는 것을 알아보도록 하겠습니다.

 

 

주니하랑은 위와 같은 구성도처럼 Docker를 이용한 배포를 해 보도록 할 것이에요.

 

 

 

Nginx를 최 앞단에 뒤어 Proxy역할을 하게 한 뒤 요청에 따라 FontEnd와 Backend로

그 요청이 도달하도록 할 것이에요.

이렇게 하면 Request를 보낼 때, URL 부분에 Host name이 바뀌어도 따로 변경 해 주지 않아도 된다는 장점이 있고, Port가 바뀌어도 변경이 필요없다는 장점이 있답니다! 

하지만, 최초 nginx 설정, 전체 설계가 다소 복잡한 단점을 갖고 있는 것이에요.

axios.get(`/api/values`)

 

 

 

    📍 React Application을 위한 Docker file 만들기

 

try_files 부분에 대해 좀 더 설명을 하자면 React는 Single Page App으로써, index.html 하나의 정적 파일만 가지고 있답니다. 만약 {URL}/home 이렇게 Client가 접속을 시도하면 index.html에 접근을 해서 Routing을 시켜야 하는데, Nginx에서는 자동으로 이 Routing을 할 수 없는 것이에요. 그래서 /home에 접속하려고 할 때, /home에 Mathing되는 것이 없다면 그 대안책으로 index.html을 제공하여 /home으로 갈 수 있게 임의로 설정을 해주는 부분인 것이에요.

 

다음 피드에선 Node App을 위한 Docker File 만들기를 해보도록 할게요!

 

 


 

주니하랑의 글이 마음에 드셨나요? 구독과 공감! 그리고, 댓글은 주니하랑에게 많은 힘이 됩니다

 

728x90
반응형