RHEL 8 에서 설치 / nginx
CentOS 8 에서 nginx 설치
copy nginx.repo /etc/yum.repos.d/
dnf install nginx
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
참고로 RedHat 은 다음 주소를 사용한다.
https://nginx.org/packages/rhel/8/x86_64/
실행 계정 설정
useradd nginx
usermod -s /sbin/nologin nginx
실행
sudo systemctl status nginx
sudo systemctl start nginx
sudo systemctl stop nginx
sudo systemctl reload nginx
sudo systemctl restart nginx
reload 를 하면, configuration file 를 reload 하면서도 reload 하면서도 nginx 는 계속 살이있다. 만약 config file 의 syntax error 가 있으면, reload 가 abort 되고, 서버는 옛날 config 로 계속 돈다.
그외의 방법은 아래처럼 init.d
를 사용하거나, nginx cli 를 사용하는 것이 있다. 자세한 내용은 ref. 3 에서 볼 수 있다.
sudo /etc/init.d/nginx stop
sudo nginx -s stop
nginx 를 booting 할 때 자동으로 실행 하도록
sudo systemctl enable nginx
sudo systemctl disable nginx
systemctl
기본적으로 nginx.service 가 만들어지지만, 수동으로 만들고 싶다면 다음 방법을 이용하자.
vi /lib/systemd/system/nginx.service
참고로 centos8 에서 가져온 내용이다.
다른 내용은 여기 를 참고하자.
[Unit]
Description=nginx - high performance web server
Documentation=http://nginx.org/en/docs/
After=network-online.target remote-fs.target nss-lookup.target
Wants=network-online.target
[Service]
Type=forking
PIDFile=/var/run/nginx.pid
ExecStart=/usr/sbin/nginx -c /etc/nginx/nginx.conf
ExecReload=/bin/sh -c "/bin/kill -s HUP $(/bin/cat /var/run/nginx.pid)"
ExecStop=/bin/sh -c "/bin/kill -s TERM $(/bin/cat /var/run/nginx.pid)"
[Install]
WantedBy=multi-user.target
See Also
- CommandLine | NGINX :
- nginx 가 동작중, 새로운 binary 로 변경하는 법이 나와 있다. 기존의 binary를 새로운 것으로 바꾸고, master process 에 USR2 signal 을 주면 된다고 한다. 자세한 것은 링크를 확인하자.
댓글 없음:
댓글 쓰기