본문 바로가기
Devops/Docker

[Docker] Nginx 사용해보기

by 볼링치는 개발자 2021. 6. 10.
반응형

Nginx 설치하고 사용해보기

이번 포스팅에서는 Docker로 nginx를 사용해 보겠습니다.

먼저 다음 명령어로 ubuntu이미지를 기반으로 한 컨테이너를 실행하고 접근하겠습니다

$ docker run -i -t ubuntu bash

그리고 다음 명령어를 통해 환경을 설정해 주겠습니다

$ apt -y update
$ apt -y upgrade

다음 명령어를 통해 nginx를 컨테이너에 설치해 주겠습니다

$ apt -y install nginx

설치 도중 다음과 같은 설정을 해줘야 하는데, Asia, Seoul을 선택해 주면 됩니다.

그럼 설치가 완료됩니다.

nginx 버전을 확인하며 설치가 잘 된 것을 확인할 수 있습니다.

그럼 현재까지 nginx가 설치된 ubuntu 컨테이너를 구성했습니다.

 

 

추가적으로 ip를 알아내기 위해 ifconfig 명령어를 사용하기 위해 다음 명령어로 net-tools를 설치해 줍시다.

$ apt -y install net-tools

그럼 해당 컨테이너의 ip주소 및 정보를 확인할 수 있습니다.

그럼 이제 다음 명령어를 통해 nginx를 실행해 봅시다.

# service nginx start

위에 확인했던 ip주소로 접속하면 niginx가 정상적으로 실행되고 있는 것을 확인할 수 있습니다.

현재 nginx가 실행 중인 컨테이너를 다른 컨테이너를 하나 생성해 주고, 동일하게 설치를 진행하고, curl도 설치를 하고 다음 명령어를 입력하면 nginx를 확인할 수 있습니다.

$ curl 172.17.0.2

즉, nginx가 실행되고 있는 ubuntu 컨테이너를, 다른 ubuntu 컨테이너도 nginx를 확인할 수 있습니다.


Nginx 이미지 사용하기

여태까지, ubuntu 컨테이너를 생성하고, 모든 설치 환경을 구성해 주고, nginx을 직접 설치해서 nginx가 실행되고 있는 ubuntu 컨테이너를 구성했습니다.

 

Docker Hub에는 nginx가 만들어져 있는 이미지 파일이 있습니다.

이 이미지 파일로 구성된 nginx컨테이너를 다음과 같은 명령어로 생성하고 접근해 보겠습니다

$ docker run -it -d -p 90:90 nginx

-d 옵션: detach 모드로 데몬으로 백그라운드에서 실행하는 옵션입니다.

-p 옵션: 포트를 mapping 하는 옵션입니다. -p 90:90 이면, 앞의 90은 docker host의 90 포트, 뒤의 90은 container의 90 포트입니다.

 

$ docker ps 명령어를 통해 해당 nginx 컨테이너를 확인할 수 있습니다.

해당 nginx 컨테이너의 ip주소를 얻기 위해 접근해 봅시다.

nginx의 컨테이너에 접근하기 위해 다음 명령어를 입력합니다.

$ docker exec -it [컨테이너 id] bash

exec 명령어: 해당 컨테이너에 명령어를 실행하기 위한 명령어

 

즉, 해당 컨테이너에 연결해 bash명령어를 실행하라는 뜻입니다.

nginx 컨테이너에 들어와서 다음 명령어를 입력해 ip 주소를 알아낼 수 있습니다.

$ apt -y update
$ apt -y install net-tools
$ ifconfig

IP주소가 172.17.0.2인 것을 확인할 수 있었습니다.

해당 ip로 접속해 보면 nginx가 잘 실행되고 있는 것을 확인할 수 있습니다.

다른 컨테이너에서 curl [ip주소] 명령어를 통해 nginx가 잘 구동되고 있는지 확인도 가능합니다.

이렇게 nginx 컨테이너에 직접 들어가지 않고 ip주소를 알아낼 수 있는 방법이 있습니다.

$ docker inspect [컨테이너 ID]

위에 docker ps 명령어를 통해 확인한 nginx컨테이너의 아이디는 0481f54bce5c임을 확인할 수 있습니다.

$ docker inspect 0481f54bce5c을 입력해보겠습니다.

엄청 많은 정보와 함께 NetworkSettings 부분을 보면 설정해 준 90 포트와 ip주소를 확인할 수 있습니다.

 


PS.

도커 관련 공부를 하다가, 개발자 분들이시라면 좋아하실 만한 상품에 대해 한번 소개해보려 합니다.

책상에서 모두 필요시를 위해 휴지를 두실텐데요, 도커 공부하면서 재밌고, 보면서 공부의욕도 셈 솟는 아이템이 있습니다.

다름 아닌 도커 휴지케이스인데요! 도커 컨테이너라는 이름과 어울리게 컨테이너 모양의 휴지 케이스입니다.

옆에다가 놓고 사용하면 공부 의욕도 생기고 보기에도 너무 좋은 것 같네요!

(쓸데없이 휴지를 많이 뽑아보게 되긴 합니다)

측면을 보니 정말 컨테이너 같은 디자인이 너무 디테일하고 재밌더라고요!

MAX GROSS 34,000KG는 무슨 뜻일지 궁금하네요.

다들 도커 휴지통 하나 장만해 보시고 도커/컨테이너 마스터가 되어봅시다!

아래 링크에서 구매할 수 있습니다!

https://incatos.shop/surl/P/11

반응형

댓글