如何在 AWS EC2 上安装 NGINX Linux 2

How to install NGINX on AWS EC2 Linux 2

我是 AWS 的新手,正在尝试了解应该在我的实例上安装哪个版本的 NGINX。我找到了多个选项;

在我的开发环境 (Centos VM) 上,我使用了 sudo yum install nginx。尝试过 EPEL 路线后,我没有得到相同的设置,特别是站点 enabled/available 没有作为设置的一部分创建。我想使用需要那些的 nginxconfig.io 。我应该使用哪个版本的 NGINX?

我个人会使用亚马逊自己的存储库。

Amazon repo 提供的版本相对较旧(1.12.2 在撰写本文时)。查看亚马逊存储库可以访问哪些版本 运行

amazon-linux-extras list | grep nginx

如果您想要更高版本,请考虑 EPEL。

关于配置,最好的办法是明确向服务器提供所需的配置。

使用现成的可以让你起床 运行宁。然而,当 Nginx 更新时,你 运行 有发生变化的风险。明确提供您自己的配置可以让您更好地控制什么是 运行ning.

可能最简单的方法是将 nginxconfig.io 生成的配置上传到 S3。

然后在创建 EC2 实例时通过用户数据添加脚本以下载您的配置。

https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/user-data.html

像这样...

#!/bin/bash

# Install Nginx
amazon-linux-extras install nginx1.12

# Back up existing config
mv /etc/nginx /etc/nginx-backup

# Download the configuration from S3
aws s3 cp s3://{my_bucket}/nginxconfig.io-example.com.zip /tmp

# Install new configuration
unzip /tmp/nginxconfig.io-example.com.zip -d /etc/nginx

nginxconfig.io 提供的配置为您设置了所有站点 enabled/available。

可能更容易的替代安装方式(具有相当新的 Nginx 版本):

$ sudo amazon-linux-extras list | grep nginx
 38  nginx1=latest            disabled      [ =stable ]

$ sudo amazon-linux-extras enable nginx1
 38  nginx1=latest            enabled      [ =stable ]
        
Now you can install:
$ sudo yum clean metadata
$ sudo yum -y install nginx
    
$ nginx -v
nginx version: nginx/1.16.1