Home Nginx & Spring Boot 구성하기(2) Linux 버전
Post
Cancel

Nginx & Spring Boot 구성하기(2) Linux 버전

내가 작업할 서버는 brew가 설치된 MacOS가 아니기에 Linux에 설치하는 방법들을 대강 정리하려 한다. 아마도 yum은 이미 설치되어 있었던거 같다. 검색하면서보니 주로 사람들이 사용하는 리눅스 OS는 무료이며 가벼운 CentOS

리눅스 운영체제 👉🏻 리눅스 운영체제들에 대해 알아보자 https://ijo0r98.github.io/posts/linux/

Nginx 설치

yum 패키지 관리를 위한 yum-utils 설치

1
yum install yum-utils

Nginx package는 외부 레퍼지토리 통해서 다운받아야한다고 한다. yum 레퍼지토리 관련 위치는 /etc/yum.repos.d/
이 위치에 새로 파일을 생성하여 nginx 레퍼지토리 연결 정보를 추가해준다.

1
vi /etc/yum.repos.d/nginx.repo
1
2
3
4
5
6
[nginx]
name=nginx repo
# https://nginx.org/packages/ 여기서 본인 OS와 필요한 버전 맞춰서 작성
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/ 
gpgcheck=0
enabled=1 

혹은 버전을 명시하여 추가할 수도 있다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/ 
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

이럴 경우 다운받기 전 다운받을 버전을 선택해줘야한다.

1
yum-config-manager --enable nginx-mainline # stable(default) 선택 시 생략 가능

NginX는 stable, mainline 두 버전이 있다. NginX의 공식 설명에 따르면 버그 수정이나 보안 패치 등은 항상 mainline 버전에 먼저 적용되기 때문에 mainline을 사용하는 것을 추천한다고 한다. stable 버전을 사용하는 주된 경우는 third-party 모듈을 사용하고 있어서 신규 버전에서 호환성 문제가 발생할 가능성이 걱정될 때라고 한다.
stable, mainline 두 가지 버전 중에서 기본은 stable 버전으로 이를 이용 시 위의 명령어는 생략 가능하다. mainline 버전을 원할 경우 위의 명령어로 설정을 변경해줘야 한다.

Nginx 설치

1
yum -y install nginx

서비스 실행과 기본 명령어

버전 확인

1
nginx -version

서비스 기동 및 중지

1
2
3
4
systemctl enable nginx # 부팅 시 자동 실행
systemctl start nginx # 서비스 시작
systemctl stop nginx # 서비스 정지
systemctl status nginx # 서비스 상태 확인 

또는

1
/etc/init.d/nginx start # sudo /etc/init.d/nginx start

환경설정

1
vi /etc/nginx/conf.d/default.conf

그 이후는 이전 블로그와 동일 👉🏻 Nginx & Spring Boot 구성하기(1) Mac M1 https://ijo0r98.github.io/posts/web-nginx-1/

  • 이전 포스팅에서 nginx의 설정파일은 /etc/nginx/nginx.conf 였으나 환경에 따라 /etc/nginx/conf.d/default.conf 이기도함
    /etc/nginx/nginx.conf 이 파일도 있긴 한데 열어보면 conf.d/*.conf 파일을 포함하고 있음
    1
    2
    3
    
    http {
      include      /etc/nginx/conf.d/*.conf;
    }
    
  • 빌드 결과물 위치는 /usr/share/nginx/html



여러 블로그를 보다보니 필수 과정은 아닌 듯 하나 혹시 몰라 추가

디렉토리 설정

홈으로 사용할 디렉토리를 생성하고 해당 디렉토리의 소유권을 설정한다. 그리고 Nginx가 정상 동작하는지 확인하기 위해 설치시 함께 포함된 index.html을 홈 디렉토리로 복사한다.

1
2
3
4
mkdir -p /ncp/data/www # 디렉토리 생성
chown -R nginx:nginx /ncp/data/www # 파일권한 설정
cp /usr/share/nginx/html/index.html /ncp/data/www/index.html # index.html 이동
ls -al /ncp/data/www # 잘 복사됐는지 확인

방화벽 포트 개방

웹서버 포트 사용을 위한 방화벽 개방

1
2
3
firewall-cmd --permanent --zone=public --add-port=8080/tcp # 포트 개방
firewall-cmd --reload # 방화벽 재시작
firewall-cmd --list-ports # 개방된 포트 확인

http, https에 대한 포트 개방

1
2
firewall-cmd --permanent --zone=public --add-service=http # 80
firewall-cmd --permanent --zone=public --add-service=https # 443

firewall 설치가 안된 경우

1
2
3
yum install firewalld # 설치
systemctl start firewalld # 서비스 시작
systemctl enable firewalld # 부팅 시 서비스 자동 시작



CentOS에서 NginX 설치, 설정하는 방법 https://docs.3rdeyesys.com/compute/ncloud_compute_lemp_nginx_install_setting_centos_guide.html
[CentOS 7] CentOS 7 - NGINX 설치 방법 https://holjjack.tistory.com/114
Linux : CentOS 8 : Nginx 설치 방법, 예제, 명령어 https://jjeongil.tistory.com/1779

This post is licensed under CC BY 4.0 by the author.

Nginx & Spring Boot 구성하기(1) Mac M1 버전과 설정 기본

MAC CORS 무시하고 크롬 실행하기