Issue
I have an Elastic Beanstalk web application using Amazon Linux AMI that requires the latest build of nginx. The nginx build that comes with AMI version 2018.03 is version 1.12.1, whereas the latest stable build on nginx.org is 1.15.4. Only 1.12.1 is available from Amazon's yum repositories. The preferred strategy we would like to use would be to create a custom RPM and pull that from an endpoint and install. How would I go about creating a custom RPM of nginx that would run on Amazon Linux? Or is there a pre-built source that I could take advantage of?
Solution
It turns out the best way to do this is to create a custom AMI. You can find instructions on how to create a custom AMI here:
https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/using-features.customenv.html
And how to install from source here:
How to install nginx 1.9.15 on amazon linux disto
If you want to swap out a running instance try here:
https://www.photographerstechsupport.com/tutorials/upgrade-running-nginx-amazon-linux/
I personally got it working with a mix of the code from those two sources. I also had to yum install gcc to get make to work, and had to manually add the folder /var/cache/nginx before the nginx service would work. Happy upgrading!
Answered By - sakurashinken