EC2에 yum으로 Nginx를 설치하려고 할 때 못했던 이야기

EC2에 yum으로 Nginx를 설치하려고 할 때 못했던 이야기

2022-10-06 last update

6 minutes reading AmazonLinux EC2 AWS 초보자 Yum
EC2 인스턴스를 만들 때 Nginx를 설치하려고하면
설치 방법이 생각했던 것과 다르다는 이야기가 됩니다.

세 줄에


  • Amazon Linux 2 (AL2)이기 때문에 yum에서 Nginx가 제공되지 않았습니다
  • Extras 저장소에서 제공하는 Nginx를 설치했습니다.
  • Nginx를 시작하고 브라우저를 볼 수 있습니다

  • 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