IT/CLOUD(AWS,Azure,GCP,Docker)

도커(Docker) - NGINX 웹서버 설치 및 환경설정

알콩달콩아빠 2023. 9. 17. 14:41
728x90
반응형

엔진엑스라 불리우는 nginx웹서버는 차세대 웹서버라 불리울 만큼, 그 점유율을 점차 늘려가고 있다. nginx웹서버의 특징은 다음의 한마디로 정의가 가능하다. 

더 작은 자원으로 더 빠르게 데이터를 서비스할 수 있다.

 

Apache, WebToB 웹서버만 사용을 해봤던 나에게는 새로운 호기심으로 다가왔다. 이 글에서는 nginx웹서버를 docker 위에 올려서 환경설정을 해보고자 한다. nginx가 이미 설치된 이미지를 사용하여 웹서버를 구축하는 방식을 설명하고자 한다.

 

nginx 도커 이미지를 사용하여 웹서버를 구축하기

 

먼저 nginx 이미지를 다운로드 받고, 다운받은 이미지를 확인한다.

# 이미지 다운로드
docker pull nginx

# 이미지 확인
docker image ls

 

다운 받은 이미지로 nginx_webserver라는 이름을 가진 nginx 서버를 가동해본다.

# docker 이미지로 nginx 웹서버 실행
# -i : 사용자 입출력 가능
# -t : 가상터미널 환경 조성
# -d : detach mode 로 실행(= 백그라운드 실행)
# -p : [외부포트]:[내부포트] 외부포트로 접속요청하면 내부포트로 맵핑

docker run -it --name nginx_webserver -d -p 80:80 nginx

# docker 실행 서버 확인
docker ps

 

웹서버에서 다음과 같은 화면이 조회가 된다면 제대로 동작을 하는 것이다.

 

환경 화일을 살펴보자. server 섹션 안쪽에 listen port, server_name을 설정할 수 있고, access log위치, 웹루트는 location에서 path를 지정할 수 있다.

# 환경파일 위치:  /etc/nginx/conf.d/default.conf 

server {
    listen       80;
    listen  [::]:80;
    server_name  localhost;

    #access_log  /var/log/nginx/host.access.log  main;

    location / {
        root   /usr/share/nginx/html;
        index  index.html index.htm;
    }

    #error_page  404              /404.html;
    
    # redirect server error pages to the static page /50x.html
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }
}

 

환경파일을 수정한 이후 다음의 명령어로 환경파일을 다시 읽어들일 수 있다.

nginx -s reload

 

728x90
반응형