Skip to content

Instantly share code, notes, and snippets.

@ankitsinghaniyaz
Created April 20, 2017 17:15
Show Gist options
  • Save ankitsinghaniyaz/48b3276d344668dff82a2b1cc3a8d455 to your computer and use it in GitHub Desktop.
Save ankitsinghaniyaz/48b3276d344668dff82a2b1cc3a8d455 to your computer and use it in GitHub Desktop.
Elastic Beankstalk Nginx configuration to supports /assets and /packs
# This is to enable WS support. Credits: # https://gist.github.com/Bubelbub/0a942a0d51a3d329897d
# THIS WORKS! for running the example 5.0.0.beta1 chat app on a single instance Elastic beanstalk AWS instance
files:
"/etc/nginx/conf.d/websockets.conf" :
content: |
upstream backend {
server unix:///var/run/puma/my_app.sock;
}
server {
listen 80;
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;
server_name forme-dev.us-west-2.elasticbeanstalk.com;
# prevents 502 bad gateway error
large_client_header_buffers 8 32k;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
# prevents 502 bad gateway error
proxy_buffers 8 32k;
proxy_buffer_size 64k;
proxy_pass http://backend;
proxy_redirect off;
location ^~ /assets/ {
root /var/app/current/public;
}
# commented out for now in favor of rails serving the files
location ^~ /packs/ {
root /var/app/current/public;
}
# enables WS support
location /cable {
proxy_pass http://backend;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}
}
container_commands:
01restart_nginx:
command: "service nginx restart"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment