Articles of 弹性beanstalk

ElasticBeanstalk上的Websockets提供404

我试图部署一个websocket服务器到Elastic Beanstalk。 我有一个包含nginx和jar服务器的Docker容器,而nginx只是做转发。 nginx.conf是这样的: listen 80; location /ws/ { # <– this part only works locally proxy_pass http://127.0.0.1:8090/; # jar handles websockets on port 8090 proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; } location / { # <– this part works locally and on ElasticBeanstalk proxy_pass http://127.0.0.1:8080/; # jar handles http requests on port […]

Rails应用程序迁移到AWS Elastic Beanstalk :: Bad Gateway(502)

所以我从Heroku迁移到AWS Elastic Beanstalk并testing了水域。 我正在关注这个文档: AWS Docs ::将Rails应用程序部署到AWS 但是,在下面的文档后,我不断收到一个坏网关502(错误)。 这是我的应用程序的规格: Rails 4.1.8 Ruby 2.1.7 服务器彪马 所以我检查了我的/log/nginx/error.log ,这里是我看到的: 2015/11/24 06:44:12 [crit] 2689#0:* 4719 connect()连接到unix:///var/run/puma/my_app.sock失败(2:没有这样的文件或目录)上游,客户端:172.31.13.129,服务器:_,请求:“G ET / HTTP / 1.1”,上游:“ http:// unix:///var/run/puma/my_app.sock:/ ”,主机: “my-app-env-mympay5afd.elasticbeanstalk.com” 从这个AWS论坛线程看来,Puma似乎没有正确启动。 所以我看过的三个日志文件是: /var/log/eb-activity.log /var/log/eb-commandprocessor.log /var/log/eb-version-deployment.log 除了我修正的“secret_key_base”错误(我使用了eb setenv SECRET_KEY_BASE=[some_special_key]命令)之外,它们都没有显示任何错误。 有一点可以暗示问题的根源是/var/log/nginx/rotated/error.log1448330461.gz有以下内容 2015/11/24 01:06:55 [警告] 2680#0:在/etc/nginx/nginx.conf:39中复制MIMEtypes“text / html”2015/11/24 01:06:55 [warn] 2680 #0:在0.0.0.0:80上冲突的服务器名称“localhost”,被忽略 但他们似乎是警告而不是严厉的阻止者。 还有其他的文件我应该看看吗? 作为另一个参考点,我已经看过这个SO Post ,这似乎暗示我需要启用SSL才能使所有这些工作。 […]

Elastic Beanstalk上的Docker部署不收集NGINX日志

根据亚马逊的Elastic Beanstalk多容器Dockerconfiguration文档 ,我应该能够使用挂载点将NGINX日志放到Elastic Beanstalk期望的位置。 要从容器实例挂载的卷以及要在其上挂载的容器文件系统上的位置。 装载包含应用程序内容的卷,以便您的容器可以读取您在源包中上载的数据,以及将日志数据写入Elastic Beanstalk可以收集它的位置的日志卷。 Elastic Beanstalk在容器实例上创build日志卷,每个容器都在/ var / log / containers / containername上创build日志卷。 这些卷被命名为awseb-logs-containername,并且应该挂载到写入日志的容器文件结构中的位置。 例如,以下装入点将容器中的nginx日志位置映射到Nginx代理容器的Elastic Beanstalk生成的卷。 { "sourceVolume": "awseb-logs-nginx-proxy", "containerPath": "/var/log/nginx" } 我已经在我的应用程序中为两个NGINX容器做了这个,但是当我请求日志时,EB不提供NGINX日志。 { "AWSEBDockerrunVersion": 2, "containerDefinitions": [ { "name": "gs-api-nginx-versioning", "image": "829481521991.dkr.ecr.us-east-1.amazonaws.com/gs-api-nginx-versioning:latest", "memory": 128, "essential": true, "mountPoints": [ { "sourceVolume": "awseb-logs-gs-api-nginx-versioning", "containerPath": "/var/log/nginx" } ], "portMappings": [ { "hostPort": 80, "containerPort": […]

用elasticbeanstalk,java,使用rest服务器和websocket,不能连接

我正在尝试configurationnginx路由,以便能够使用其余服务器(使用Java Spark)和Websockets(使用Netty-socketIO)。 它在本地运行得非常好,但是无法在aws elasticbeanstalk上运行。 我有Java Spark监听端口5000,这是默认的http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/java-se-platform.html 默认情况下,Elastic Beanstalk将nginx代理configuration为在端口5000上将请求转发到您的应用程序 这是有效的。 我在端口9000上听Websocket。 我确实将ELB协议更改为TCP。 仍然从aws文件: 要扩展Elastic Beanstalk的默认nginxconfiguration,请将.confconfiguration文件添加到应用程序源包中名为.ebextensions / nginx / conf.d /的文件夹中。 Elastic Beanstalk的nginxconfiguration会自动在此文件夹中包含.conf文件。 我尝试没有太多的成功: server { location / { proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; } } SocketIO客户端连接stringhttp://beanstalk-address-here.us-east-1.elasticbeanstalk.com:9000 在“networking”选项卡中,请求在发生故障之前(暂停)一段时间。

Elastic Beanstalk上的Nginx服务器的基本身份validation

我正在尝试在运行nodejs的弹性beanstalk实例上设置基本身份validation,但是,我似乎无法得到这个工作。 我已经在Amazon EC2上遵循了本指南Nginx服务器 ,但是httpstream量仍然通过nginx实例。 我想这是因为ec2实例上的nginx服务器不是我需要修改virtual.conf文件的那个服务器。 我认为nginx服务器是完全在另一个实例,但我似乎无法find它。 我认为这是因为当我ping我的网站的域名时,它的IP是nginx服务器,而不是我的弹性IP。 任何想法如何configurationNginx的限制HTTP和HTTPS到我的网站Elastic beanstalk?

如何修改AWS Elastic Beanstalk上的Nginxconfiguration

我正在尝试修改Elastic Beanstalk部署的Nginxconfiguration。 默认configuration是: – upstream nodejs { server 127.0.0.1:8081; keepalive 256; } server { listen 8080; if ($time_iso8601 ~ "^(\d{4})-(\d{2})-(\d{2})T(\d{2})") { set $year $1; set $month $2; set $day $3; set $hour $4; } access_log /var/log/nginx/healthd/application.log.$year-$month-$day-$hour healthd; access_log /var/log/nginx/access.log main; location / { proxy_pass http://nodejs; proxy_set_header Connection ""; proxy_http_version 1.1; proxy_set_header Host $host; proxy_set_header X-Real-IP […]

将RoR部署到AWS Beanstalk时发生Nginx错误

我正在尝试将Ruby on Rails API部署到AWS Elastic Beanstalk,而没有任何运气。 我可以一次部署成功,我只会得到错误,因为生产环境不db:种子。 但突然每次我想部署我会在日志上有以下错误 ————————————- /var/app/support/logs/passenger.log ————————————- [ 2016-12-16 13:22:39.2849 5408/7f442ea10780 agents/Watchdog/Main.cpp:728 ]: All Phusion Passenger agents started! 2016/12/16 13:22:40 [error] 5427#0: *3 "/var/app/current/public/index.html" is not found (2: No such file or directory), client: 127.0.0.1, server: _, request: "HEAD / HTTP/1.1", host: "0.0.0.0" 2016/12/16 13:22:40 [error] 5427#0: *3 testing "/var/app/current/public" existence […]

呈现HTML后的Puma“终止超时工作者”

我是AWS Beanstalk-Rails-Puma-Nginx的新手。 将我的RAILS应用程序部署到Beanstalk之后,我的所有API调用都可以正常工作,但是HTML页面导致错误。 当打开我的HTML页面 – Nginx会抛出502 Bad Gateway错误。 彪马日志: Started GET "/admin" for 182.70.76.160 at 2016-04-22 05:13:19 +0000 Processing by Devise::SessionsController#new as HTML Rendered devise/sessions/new.html.erb within layouts/application (6.1ms) [18858] ! Terminating timed out worker: 22913 var/app/current/production.log是空的。 阅读某处,添加SSL可以解决。 是否需要添加SSL? 请帮忙! 我卡住了! 状态 :我的资产是巨大的,因为它是自杀。 我正在使用一个主题,并删除所有不必要的JS,CSS和图像。 现在,Puma不会终止,但它不会编译资产。 我select了Ruby作为应用程序types,所以它应该为我做,对吗?

AWS EB – 将所有stream量redirect到https

我的nodejs应用程序部署在AWS EB上。 我已经configuration了https服务器,它工作正常。 现在我需要将每个非https请求redirect到https。 作为前缀,像这样: GET example.com => https://www.example.com 我正在使用nginx,而我的EB实例是在它前面没有负载平衡器的单个实例。 我用这段代码在.ebextensions文件夹中创build了一个configuration文件 资源: sslSecurityGroupIngress: types:AWS :: EC2 :: SecurityGroupIngress 属性: GroupId:{“Fn :: GetAtt”:[“AWSEBSecurityGroup”,“GroupId”]} IpProtocol:tcp ToPort:443 来自港口:443 CidrIp:0.0.0.0/0 文件: /etc/nginx/conf.d/999_nginx.conf: 模式:“000644” 所有者:根 组:根 内容:| 上游nodejsserver { 服务器127.0.0.1:8081; keepalive 256; } #HTTP服务器 服务器{ 听8080; server_name localhost; 返回301 https:// $ host $ request_uri; } #HTTPS服务器 服务器{ 听443; server_name localhost; […]

使用AWS弹性Beanstalk上的nginx和php-fpmreplaceApache / PHP

我一直在试图find关于用AWS beanstalk应用程序的nginx和php-fpmreplaceApache / PHP的最新文档。 不过,我发现的唯一的东西是旧的,它指的是修改hostmanager来完成这个,所以这不再适用。 我可以通过一些努力破解我的方式,但是我很好奇,如果有人最近这样做了,他们的程序是什么?