CentOS 8에서 NGINX 웹 서버를 설치하는 방법을 알아보고, 실습을 통해 쉽게 설치할 수 있습니다.
CentOS 8에서 NGINX 웹 서버를 설치하는 방법을 알아보고, 실습을 통해 쉽게 설치할 수 있습니다.
RHEL/CentOS 8에서 DNF(YUM)으로 NGINX 설치 시 APPStream의 기본 설정인 1.14의 구버전이 설치되도록 설정 되어 있습니다. 2020년 5월 20일 기준 NGINX 최신 안정 버전은 1.18 이며, NGINX의 저장소를 등록하고 최신 안정 버전을 설치하는 방법을 알아보겠습니다.
실습 환경
- 운영 체제(OS) : CentOS 8
- NGINX 버전 : 1.18
- root 사용자 계정으로 실행
- IP 설정 및 인터넷이 가능한 환경
NGINX 버전 정보 확인하기
NGINX 사이트에서 1.18버전이 최신 안정 버전임을 확인 할 수 있습니다.
nginx news : nginx-1.18.0 stable version release |
NGINX 설치 가이드 확인하기
아래 그림은 NGINX 사이트에서 제공하는 설치 가이드 입니다.
출처 : http://nginx.org/en/linux_packages.html |
yum-utils 패키지 설치하기
NGINX 패키지 저장소 지정을 위해 YUM 패키지 매니저 모음을 먼저 설치 합니다.
[yum install yum-utils -y]
[root@runit.cloud ~]# yum install yum-utils -y Last metadata expiration check: 0:00:10 ago on Wed 20 May 2020 04:17:59 PM KST. Dependencies resolved. ============================================================================================================================================================================================================================================= Package Architecture Version Repository Size ============================================================================================================================================================================================================================================= Installing: yum-utils noarch 4.0.8-3.el8 BaseOS 64 k Transaction Summary ============================================================================================================================================================================================================================================= Install 1 Package Total download size: 64 k Installed size: 19 k Downloading Packages: yum-utils-4.0.8-3.el8.noarch.rpm 4.4 MB/s | 64 kB 00:00 --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Total 124 kB/s | 64 kB 00:00 Running transaction check Transaction check succeeded. Running transaction test Transaction test succeeded. Running transaction Preparing : 1/1 Installing : yum-utils-4.0.8-3.el8.noarch 1/1 Running scriptlet: yum-utils-4.0.8-3.el8.noarch 1/1 Verifying : yum-utils-4.0.8-3.el8.noarch 1/1 Installed: yum-utils-4.0.8-3.el8.noarch Complete!
NGINX repo 추가하기
공식 NGINX 저장소를 지정해서 사용합니다.
cat 명령을 사용해서 nginx.repo 파일을 생성합니다.
[cat << EOF > /etc/yum.repos.d/nginx.repo [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 EOF]
NGINX Stable repo 선택하기
위에서 설치한 yum-utils 패키지의 yum-config-manager 명령을 사용해서 저장소를 선택합니다.
[yum-config-manager --enable nginx-stable]※ Mainline repo 적용 시 : yum-config-manager --enable nginx-mainline
NGINX 설치하기
[yum install nginx -y]
[root@runit.cloud ~]# yum install nginx -y CentOS-8 - AppStream 3.8 kB/s | 4.3 kB 00:01 CentOS-8 - Base 8.5 kB/s | 3.9 kB 00:00 CentOS-8 - Extras 2.4 kB/s | 1.5 kB 00:00 nginx stable repo 9.0 kB/s | 15 kB 00:01 Dependencies resolved. ============================================================================================================================================================================================================================================= Package Architecture Version Repository Size ============================================================================================================================================================================================================================================= Installing: nginx x86_64 1:1.18.0-1.el8.ngx nginx-stable 806 k Transaction Summary ============================================================================================================================================================================================================================================= Install 1 Package Total download size: 806 k Installed size: 3.6 M Downloading Packages: nginx-1.18.0-1.el8.ngx.x86_64.rpm 170 kB/s | 806 kB 00:04 --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Total 170 kB/s | 806 kB 00:04 warning: /var/cache/dnf/nginx-stable-614ef03fac352fea/packages/nginx-1.18.0-1.el8.ngx.x86_64.rpm: Header V4 RSA/SHA1 Signature, key ID 7bd9bf62: NOKEY nginx stable repo 1.2 kB/s | 1.5 kB 00:01 Importing GPG key 0x7BD9BF62: Userid : "nginx signing key" Fingerprint: 573B FD6B 3D8F BC64 1079 A6AB ABF5 BD82 7BD9 BF62 From : https://nginx.org/keys/nginx_signing.key Key imported successfully Running transaction check Transaction check succeeded. Running transaction test Transaction test succeeded. Running transaction Preparing : 1/1 Running scriptlet: nginx-1:1.18.0-1.el8.ngx.x86_64 1/1 Installing : nginx-1:1.18.0-1.el8.ngx.x86_64 1/1 Running scriptlet: nginx-1:1.18.0-1.el8.ngx.x86_64 1/1 ---------------------------------------------------------------------- Thanks for using nginx! Please find the official documentation for nginx here: * http://nginx.org/en/docs/ Please subscribe to nginx-announce mailing list to get the most important news about nginx: * http://nginx.org/en/support.html Commercial subscriptions for nginx are available on: * http://nginx.com/products/ ---------------------------------------------------------------------- Verifying : nginx-1:1.18.0-1.el8.ngx.x86_64 1/1 Installed: nginx-1:1.18.0-1.el8.ngx.x86_64 Complete!
NGINX 서비스 시작하기
systemctl 명령을 사용해서 NGINX 서비스를 시작합니다.
[systemctl start nginx]
NGINX 서비스 상태 확인하기
systemctl 명령을 사용해서 NGINX 서비스 상태를 확인합니다.
[systemctl status nginx]
[root@runit.cloud ~]# systemctl status nginx ● nginx.service - nginx - high performance web server Loaded: loaded (/usr/lib/systemd/system/nginx.service; disabled; vendor preset: disabled) Active: active (running) since Wed 2020-05-20 16:33:31 KST; 12s ago Docs: http://nginx.org/en/docs/ Process: 2210 ExecStart=/usr/sbin/nginx -c /etc/nginx/nginx.conf (code=exited, status=0/SUCCESS) Main PID: 2211 (nginx) Tasks: 2 (limit: 24643) Memory: 2.0M CGroup: /system.slice/nginx.service ├─2211 nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf └─2212 nginx: worker process May 20 16:33:31 runit.cloud systemd[1]: Starting nginx - high performance web server... May 20 16:33:31 runit.cloud systemd[1]: Started nginx - high performance web server.
NGINX 서비스 등록 및 자동 시작 설정하기
[systemctl enable nginx]
[root@runit.cloud ~]# systemctl enable nginx Created symlink /etc/systemd/system/multi-user.target.wants/nginx.service → /usr/lib/systemd/system/nginx.service.
마무리
NGINX 설치가 완료되었습니다.
브라우저에서 확인 시 IPTABLES / FIREWALLD 서비스를 종료하거나 정책을 추가해야 외부에서 접속할 수 있습니다.
이거 로컬에서 웹브라우저로 가상머신에 cenos ip로접근해도 엔진엑스 페이지 안뜨는데 왜그럴까요 ... nat 인데 ㅠㅠ 포트포워딩해줘도 안도는....
답글삭제로컬에서 가상 머신으로 통신이 되는지 확인해보셔야 할 것 같네요.
삭제ssh 혹은 ping 체크가 된다면 가상 머신 리눅스에서 방화벽 정책을 추가해야 접속될 거예요.