
EC2에 yum으로 Nginx를 설치하려고 할 때 못했던 이야기
2022-10-06 last update
6 minutes reading AmazonLinux EC2 AWS 초보자 YumEC2 인스턴스를 만들 때 Nginx를 설치하려고하면
설치 방법이 생각했던 것과 다르다는 이야기가 됩니다.
Amazon Linux 2 (AL2)이기 때문에 yum에서 Nginx가 제공되지 않았습니다 Extras 저장소에서 제공하는 Nginx를 설치했습니다. Nginx를 시작하고 브라우저를 볼 수 있습니다
linux라면 yum으로 인스톨이 되어 일로 인스톨을 시도한다
뭐야… 라고…!?
분명히 AL2는 yum 용 패키지가 제공되지 않는 것 같습니다.
그렇다면 오류 메시지에서 볼 수 있듯이 Extras 저장소에서 제공하는 Nginx를 설치하십시오.
nginx1.12가 enabled입니다.
(docker는 넣을 생각이 없지만 enabled가되어 있지만 괜찮을 것입니다)
버전 확인도 문제 없게 할 수 있네요.
Nginx를 시작하고 브라우저에서 기본 페이지를 확인합니다.
Nginx를 시작합시다. 만약을 위해 기동 확인도 합니다.
기동 후에 nginx가 표시되고 있기 때문에 ok군요.
AWS EC2 콘솔 > 인스턴스를 열고 시작 중인 인스턴스의 IPv4 공용 IP를 복사합니다.

브라우저에서 인스턴스의 퍼블릭 IP에 액세스하여 아래와 같은 화면이 표시되면 확인 완료
http://내 인스턴스 퍼블릭 IP

덤
설치 방법이 생각했던 것과 다르다는 이야기가 됩니다.
세 줄에
Nginx 설치
linux라면 yum으로 인스톨이 되어 일로 인스톨을 시도한다
$ sudo yum update
$ sudo yum install nginx
読み込んだプラグイン:extras_suggestions, langpacks, priorities, update-motd
パッケージ nginx は利用できません。
エラー: 何もしません
nginx is available in Amazon Linux Extra topic "nginx1.12"
To use, run
# sudo amazon-linux-extras install nginx1.12
Learn more at
https://aws.amazon.com/amazon-linux-2/faqs/#Amazon_Linux_Extras
뭐야… 라고…!?
분명히 AL2는 yum 용 패키지가 제공되지 않는 것 같습니다.
그렇다면 오류 메시지에서 볼 수 있듯이 Extras 저장소에서 제공하는 Nginx를 설치하십시오.
$ sudo amazon-linux-extras install nginx1.12
完了しました!
0 ansible2 available [ =2.4.2 ]
1 emacs available [ =25.3 ]
2 memcached1.5 available [ =1.5.1 ]
3 nginx1.12=latest enabled [ =1.12.2 ]
4 postgresql9.6 available [ =9.6.6 =9.6.8 ]
5 postgresql10 available [ =10 ]
6 python3 available [ =3.6.2 ]
7 redis4.0 available [ =4.0.5 =4.0.10 ]
8 R3.4 available [ =3.4.3 ]
9 rust1 available \
[ =1.22.1 =1.26.0 =1.26.1 =1.27.2 ]
10 vim available [ =8.0 ]
11 golang1.9 available [ =1.9.2 ]
12 ruby2.4 available [ =2.4.2 =2.4.4 ]
13 nano available [ =2.9.1 ]
14 php7.2 available [ =7.2.0 =7.2.4 =7.2.5 ]
15 lamp-mariadb10.2-php7.2 available \
[ =10.2.10_7.2.0 =10.2.10_7.2.4 =10.2.10_7.2.5 ]
16 libreoffice available [ =5.0.6.2_15 ]
17 gimp available [ =2.8.22 ]
18 docker=latest enabled [ =17.12.1 =18.03.1 ]
19 mate-desktop1.x available [ =1.19.0 =1.20.0 ]
20 GraphicsMagick1.3 available [ =1.3.29 ]
21 tomcat8.5 available [ =8.5.31 ]
nginx1.12가 enabled입니다.
(docker는 넣을 생각이 없지만 enabled가되어 있지만 괜찮을 것입니다)
버전 확인도 문제 없게 할 수 있네요.
$ nginx -v
nginx version: nginx/1.12.2
Nginx 시작 확인
Nginx를 시작하고 브라우저에서 기본 페이지를 확인합니다.
Nginx 시작
Nginx를 시작합시다. 만약을 위해 기동 확인도 합니다.
# 起動前確認
$ ps aux | grep nginx
ec2-user 32469 0.0 0.0 119484 980 pts/0 S+ 02:52 0:00 grep --color=auto nginx
# 起動
$ sudo service nginx start
Redirecting to /bin/systemctl start nginx.service
# 起動を確認
$ ps aux | grep nginx
root 32491 0.0 0.2 123740 2184 ? Ss 02:52 0:00 nginx: master process /usr/sbin/nginx
nginx 32492 0.0 0.3 124196 4000 ? S 02:52 0:00 nginx: worker process
ec2-user 32494 0.0 0.0 119484 936 pts/0 S+ 02:53 0:00 grep --color=auto nginx
기동 후에 nginx가 표시되고 있기 때문에 ok군요.
Nginx의 기본 페이지를 브라우저에서 확인
AWS EC2 콘솔 > 인스턴스를 열고 시작 중인 인스턴스의 IPv4 공용 IP를 복사합니다.

브라우저에서 인스턴스의 퍼블릭 IP에 액세스하여 아래와 같은 화면이 표시되면 확인 완료
http://내 인스턴스 퍼블릭 IP

덤
인스턴스를 시작할 때마다 Nginx를 시작하는 것은 번거롭기 때문에 자동 시작하면 쉽습니다.
$ sudo chkconfig nginx on
$ sudo chkconfig nginx on