2016-11-29 3 views
0

Ich habe eine React-Anwendung mit Node/Express-Backend entwickelt. Es basiert auf der following starter kit. Es funktioniert gut auf meinem lokalen Computer, aber wenn ich es auf AWS bereitstellen, beginnt es mit der falschen IP-Adresse.ip.address() funktioniert nicht auf aws. Wie bekomme ich programmatisch die IP-Adresse von AWS EC2?

Meine Konfigurationsdatei

const ip = require('ip') 
    server_host : ip.address(), 
    server_port : process.env.PORT || 3000, 

Lauf npm Start auf dem lokalen Rechner - funktioniert gut und es beginnt als

app:bin:server Server is now running at 192.168.1.5:3000. 

aber wenn ich es auf EC2 (52.72.209.201) setzen und starten Sie es doesn ‚t arbeiten und ich bekomme die Protokolle als

app:bin:server Server is now running at 172.31.31.141:3000. 

Wenn ich die IP-Adresse meines Instanz in der Konfigurationsdatei codieren i t funktioniert

server_host : '52.72.209.201', 
    server_port : process.env.PORT || 3000, 

jetzt beginnt es und läuft gut

app:bin:server Server is now running at 52.72.209.201:3000. 

Was kann ich hartcodierte IP-Adresse entfernen tun?

+0

haben befestigen Sie jede elastische IP? Und verstecken Sie Ihre AWS EC2 Instance IPs. Setzen Sie etwas **. –

+0

Ja. Elastic IP ist an die Instanz angehängt. Ich habe die genaue IP-Adresse nicht erwähnt;) –

+0

Hat [meine Antwort] (http://stackoverflow.com/questions/40861206/ip-address-does-not-work-on-aws-how-to-get-the-) -ip-adresse-aws-ec2-programm/40864195 # 40864195) dir helfen? Irgendwelche Kommentare? – rsp

Antwort

1

Sie sollten in der Lage sein, Ihre öffentliche IP-Adresse erhalten von:

oder:

Sie curl in ein verwenden können Schale Skript (wie Ihr Startskript), um es zu erhalten und zum Beispiel in einer Umgebungsvariablen oder einer Datei im Dateisystem zu speichern. Oder Sie können request im Knoten verwenden.

Für weitere Informationen siehe:

+0

curl http://169.254.169.254/latest/meta-data/public-ipv4 gibt die gleiche falsche IP-Adresse = 172.31.31.141 zurück. Habe ich Konfigurationsfehler beim Einrichten der EC2-Instanz gemacht? –