2017-06-27 4 views
0

Je ne parviens pas à me connecter à la page Web de mon conteneur Linux. Je suis le cours d'Udemy sur Reactjs et Redux et j'ai cloné le repo ReduxSimpleStarter de Github.Linux Container (xenail) en cours d'exécution react.js me donne le message Unable to Connect lorsque je tente de me connecter au port 8080 de l'hôte

J'ai RAN NPM installer sans problème, puis a couru npm start

[email protected]:~/udemy/react1/ReduxSimpleStarter$ npm start 

> [email protected] start /home/jason/udemy/react1/ReduxSimpleStarter 
> node ./node_modules/webpack-dev-server/bin/webpack-dev-server.js 

http://localhost:8080/webpack-dev-server/ 
webpack result is served from/
content is served from ./ 
404s will fallback to /index.html 
Hash: e1867813ff617d08f0b8 
Version: webpack 1.15.0 
Time: 10928ms 
Asset Size Chunks    Chunk Names 
bundle.js 746 kB  0 [emitted] main 
chunk {0} bundle.js (main) 706 kB [rendered] 
[0] multi main 28 bytes {0} [built] 
[1] ./src/index.js 854 bytes {0} [built] 
[2] ./~/react/react.js 56 bytes {0} [built] 
[3] ./~/react/lib/React.js 1.49 kB {0} [built] 
... 
... 
[198] ./~/invariant/browser.js 1.52 kB {0} [built] 
[199] ./src/components/app.js 2.21 kB {0} [built] 
[200] ./src/reducers/index.js 337 bytes {0} [built] 
webpack: Compiled successfully. 

naviguer à l'adresse URL par lxc list par exemple, 10.123.123.12

Navigation vers 10.123.123.12: 8080 me donne "Impossible de se connecter"

Répondre

0

J'ai finalement réglé avec les configurations suivantes.

Dans mon récipient, j'utilisé iptables pour réacheminer le trafic entrant du port 80 vers le port 8080.

sysctl -w net.ipv4.conf.all.route_localnet=1 
iptables -t nat -I PREROUTING -p tcp --dport 80 -j DNAT --to 127.0.0.1:8080 

changer ensuite le fichier webpack.config.js en ajoutant disableHostCheck: true au hachage devserver.

devServer { 
    ..., 
    ..., 
    disableHostCheck: true 
} 

Soyez prudent avec la dernière directive car il pourrait être un risque de sécurité cependant, cela est un conteneur Linux sur mon ordinateur portable, donc je ne suis pas trop inquiet à ce sujet.

Je peux maintenant naviguer vers 10.123.123.12 (pas 10.123.123.12:8080) et voir mon application.