Notice
Recent Posts
«   2024/07   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
관리 메뉴

Dev_R

Docker - AWS + Nginx 설치와 구동 (1) 본문

Server/Docker

Docker - AWS + Nginx 설치와 구동 (1)

Dave(데이브) 2020. 3. 26. 04:04
반응형

이번에는 도커를 AWS에 올리기 전에

우선 AWS EC2에 Nginx 웹서버를 올리고 구동시켜보도록 하겠습니다.

 

우선 AWS 프리티어를 이용해 EC2 인스턴스를 연결해줍니다.

 

 

sudo su -

우선 위 명령어를 통해 root 권한을 얻어오겠습니다.

여기서 sudo와 su에 관한 내용은 아래를 참고하시면 되겠습니다.

 

리눅스의 각종 기능들을 사용하려면 Root 권한 즉, 슈퍼유저의 권한이 필요한 경우가 많다.

때문에 리눅스에서는 터미널상에서 슈퍼유저의 권한으로 명령을 실행하게 하거나, root 사용자를 포함한 다른 계정으로 전환하는 명령어를 제공한다.

 

상황에 따라서 sudo / su / su - 명령어를 사용하게 되는데, 비슷해 보이지만 사실 중요한 차이가 있다.

sudo는 일반 사용자가 root권한을 잠시 빌려 명령을 실행하게 하는 명령어이다.

sudo -s 또는 sudo su 명령어를 통해서는 root 계정을 반영구적으로 빌릴 수 있다

 

su - 는 다른 사용자의 계정으로 완전히 전환하고, 전환한 사용자의 환경설정을 불러온다.

 

위와 같은 이유로 첫번째로 위 명령어를 사용한다.

 

그다음에는 아래 명령어를 통해 nginx를 설치한다.

 

 amazon-linux-extras install nginx1.12

 

 

 

 

amazon-linux-extras 명령어는 amazon linux 2 에서 사용하는 명령어이며, 각 패키지들을 제공해주는 명령어 입니다

 

 

설치가 끝나면 아래 명령어를 통해 제대로 설치가 되었는지 확인합니다.

 

$ amazon-linux-extras list

 

 

 

 

 

 

그 다음에는

$ service nginx start

위 명령어를 통해 nginx를 시작 해줍니다.

ps -ef | grep nginx

master도 떠있고 잘 작동하는 것 같습니다.

포트 스캔도 해봅니다.

sudo netstat -ntlp

 

 

 

80포트는 열려 있고 nginx가 사용중이라고 표시가 되어 있네요.

이후 public ip를 통해 웹 페이지에 접속하면 아래와 같은 화면이 뜨실겁니다.

 

 

 

 

 

 

위와 같은 화면이 뜨지 않는다면 방화벽문제를 해결해 주셔야 합니다.

이 문제는 다른 편을 통해 따로 다루겠습니다.

 

 

위 화면이 잘 뜬다면 이제 다음으로 넘어가보겠습니다.

홈 디렉토리는

cd /usr/share/nginx/html/

위와 같습니다.

이 디렉토리에 index.html이 있습니다.

 

 

이후

$ yum install –y git
$ git clone https://github.com/Changyu-Ryou/dockerPractice.git

 

위처럼 dockerPractice 디렉토리가 생깁니다.

이제 주소창에 public IP/dockerPractice 를 치면

위와 같은 창이 뜹니다.

 

이제 nginx config 파일을 수정하겠습니다.

 

nginx.conf 파일은

$ cd /etc/nginx

위 위치에 있습니다.

 

 

 

이제 vi 편집기를 이용해 nginx.conf를 편집해보겠습니다.

$ vi nginx.conf

 

 

 

위 부분을 수정함으로써  dockerPractice 폴더 아래에 index.html 파일을 기본 index 파일로 호출하게 변경했습니다.

 

 

 

 

그다음 아래 명령어를 통해 nginx를 reload 해줍니다.

reload를 하지 않으면 conf 파일 변경 내용이 반영되지 않습니다.

 

 

$ service nginx reload

 

 

 

 

이제 브라우저에서 public IP 입력만으로 dockerPractice의 index.html로 이동이 되는지 확인해 보겠습니다.

 

 

 

 

 

root 주소가 잘 변경된 것을 알 수 있습니다.

 

다음편에서는 본격적으로 aws에 docker를 올리고 nginx 컨테이너 까지 만들어보도록 하겠습니다.

 

 

 

 

출처: https://www.leafcats.com/168 

반응형
Comments