Amazon web services EC2 Meteor部署上的Web连接被拒绝
我正在使用MUP将meteor应用程序部署到运行Ubuntu18的EC2实例。我的部署似乎正常,但是当我尝试在浏览器中访问实例的公共URL时,我得到了“连接被拒绝”。我对这一点非常着迷 我假设这是一个AWS问题,比如端口未打开,但我的EC2入站规则似乎应该有效: 我通过SSH访问了这个实例,看看是否一切都正常,我想是的。首先,docker容器似乎运行良好:Amazon web services EC2 Meteor部署上的Web连接被拒绝,amazon-web-services,docker,amazon-ec2,meteor,ubuntu-18.04,Amazon Web Services,Docker,Amazon Ec2,Meteor,Ubuntu 18.04,我正在使用MUP将meteor应用程序部署到运行Ubuntu18的EC2实例。我的部署似乎正常,但是当我尝试在浏览器中访问实例的公共URL时,我得到了“连接被拒绝”。我对这一点非常着迷 我假设这是一个AWS问题,比如端口未打开,但我的EC2入站规则似乎应该有效: 我通过SSH访问了这个实例,看看是否一切都正常,我想是的。首先,docker容器似乎运行良好: CONTAINER ID IMAGE COMMAND
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2b70717ce5c9 mup-oil-pricing:latest "/bin/sh -c 'exec $M…" About an hour ago Up About an hour 0.0.0.0:80->80/tcp oil-pricing
在仍然使用SSH的情况下,当我点击curl localhost:80
时,我在控制台中返回HTML,这表明该应用程序(Meteor应用程序)运行良好
我检查了Ubuntu防火墙是否处于活动状态,但我认为它不是:
ubuntu@ip-172-30-1-118:~$ sudo ufw status verbose
Status: inactive
我的端口看起来也不错(据我所知):
但是当我在本地机器上访问Chrome并尝试通过我分配的弹性IP(34.231.39.181
)或通过EC2地址(https://ec2-34-231-39-181.compute-1.amazonaws.com/
)我得到:
我不认为这是一个MUP问题,但这里有一个MUP配置,以防万一:
module.exports = {
servers: {
one: {
host: '34.231.39.181',
username: 'ubuntu',
pem: [[MY PEM FILE]]
}
},
hooks: {
'pre.deploy': {
remoteCommand: 'docker system prune -a --force' // PRUNE DOCKER IMAGES
},
},
app: {
name: 'oil-pricing',
path: '../',
servers: {
one: {},
},
buildOptions: {
serverOnly: true,
},
env: {
ROOT_URL: 'https://ec2-34-231-39-181.compute-1.amazonaws.com/',
MONGO_URL: [[MY MONGO URL]]
PORT: 80,
},
docker: {
image: 'abernix/meteord:node-8.15.1-base', // per: https://github.com/zodern/meteor-up/issues/692
},
enableUploadProgressBar: true
},
};
当我运行mup deploy
时,所有内容都会签出:
Started TaskList: Pushing Meteor App
[34.231.39.181] - Pushing Meteor App Bundle to the Server
[34.231.39.181] - Pushing Meteor App Bundle to the Server: SUCCESS
[34.231.39.181] - Prepare Bundle
[34.231.39.181] - Prepare Bundle: SUCCESS
Started TaskList: Configuring App
[34.231.39.181] - Pushing the Startup Script
[34.231.39.181] - Pushing the Startup Script: SUCCESS
[34.231.39.181] - Sending Environment Variables
[34.231.39.181] - Sending Environment Variables: SUCCESS
Started TaskList: Start Meteor
[34.231.39.181] - Start Meteor
[34.231.39.181] - Start Meteor: SUCCESS
[34.231.39.181] - Verifying Deployment
[34.231.39.181] - Verifying Deployment: SUCCESS
我用的是Meteor 1.8.1,如果有必要的话
任何帮助都将不胜感激 您的
sudo netstat-tulpn | grep LISTEN
显示您正在监听端口80。但您正在以下位置使用HTTPS:
https://ec2-34-231-39-181.compute-1.amazonaws.com
这将连接到端口443,没有任何内容侦听该端口。因此,请将应用程序更改为侦听端口443上的HTTPS连接(需要正确的ssl证书),或者使用HTTP(未加密)转到端口80:
您的
sudo netstat-tulpn | grep LISTEN
显示您正在侦听端口80。但您正在以下位置使用HTTPS:
https://ec2-34-231-39-181.compute-1.amazonaws.com
这将连接到端口443,没有任何内容侦听该端口。因此,请将应用程序更改为侦听端口443上的HTTPS连接(需要正确的ssl证书),或者使用HTTP(未加密)转到端口80:
你好我注意到你得到了一个答案,上面有很多投票和评论,认为答案是正确的。然而,你还没有接受它。接受好的答案是一个很好的做法,否则人们会在错误的假设下重复提问,认为现有的答案没有帮助。我注意到你得到了一个答案,上面有很多投票和评论,认为答案是正确的。然而,你还没有接受它。最好的做法是接受好的答案,否则人们可能会在错误的假设下提出重复的问题,即现有的答案没有帮助。
https://ec2-34-231-39-181.compute-1.amazonaws.com
http://ec2-34-231-39-181.compute-1.amazonaws.com