O aplicativo nodejs não se conecta ao host local ao executar em um contêiner do docker
My environment:
Ubunut 17.04 LTS
npm --version: 5.6.0
nodejs --version: 4.7.2
angular cli version: 1.6.4
arquivo de docker-compor:
version: '3'
services:
my-app:
build:
context: .
dockerfile: Dockerfile
restart: unless-stopped
volumes:
- .:/usr/src/app
ports:
- "4200:4200"
Comentei o EXPOSE 4200 no dockerfile porque já o estou montando a partir do arquivo docker-compose.yml. Isso NÃO está certo, devo expor no dockerfile e montar no docker-compose?
A execução do npm start na linha de comando inicia o aplicativo com sucesso no navegador, pois eu posso ir paralocalhost:4200
e veja o aplicativo em execução.
No entanto, se eu criar meu aplicativo com o docker e executar o docker-compose, vejo que o servidor nodejs ainda está sendo executado nolocalhost:4200
no entanto, NÃO POSSO acessar o aplicativo, acessandolocalhost:4200
não abre a página.
EXECUTAR O APP MANUALMENTE FUNCIONA MUITO, POSSO VER NO NAVEGADOR:
ubuntu17@ubuntu17:~/playground/apps/myapp-ui$ ng serve
** NG Live Development Server is listening on localhost:4200, open your browser on http://localhost:4200/ **
Date: 2018-01-16T16:22:51.912Z
Hash: 40ac2bd0588ee2136d15
Time: 13963ms
chunk {inline} inline.bundle.js (inline) 5.79 kB [entry] [rendered]
chunk {main} main.bundle.js (main) 275 kB [initial] [rendered]
chunk {polyfills} polyfills.bundle.js (polyfills) 559 kB [initial] [rendered]
chunk {styles} styles.bundle.js (styles) 514 kB [initial] [rendered]
chunk {vendor} vendor.bundle.js (vendor) 12.1 MB [initial] [rendered]
webpack: Compiled successfully.
EXECUTAR O APLICATIVO DA DOCKER-COMPOSE UP EXECUTA MUITO BEM, MAS NÃO POSSO VER O APP NO NAVEGADOR com localhost: 4200
E a partir do docker-componha
ubuntu17@ubuntu17:~/playground/apps/my-app-ui$ docker-compose up
Creating network "my-app_default" with the default driver
Creating my-app_my-app_1 ... done
Attaching to my-app_my-app_1
my-app_1 | ** NG Live Development Server is listening on localhost:4200, open your browser on http://localhost:4200/ **
my-app_1 | Date: 2018-01-16T16:28:05.444Z
my-app_1 | Hash: 40ac2bd0588ee2136d15
my-app_1 | Time: 13584ms
my-app_1 | chunk {inline} inline.bundle.js (inline) 5.79 kB [entry] [rendered]
my-app_1 | chunk {main} main.bundle.js (main) 271 kB [initial] [rendered]
my-app_1 | chunk {polyfills} polyfills.bundle.js (polyfills) 549 kB [initial] [rendered]
my-app_1 | chunk {styles} styles.bundle.js (styles) 511 kB [initial] [rendered]
my-app_1 | chunk {vendor} vendor.bundle.js (vendor) 12.1 MB [initial] [rendered]
my-app_1 |
my-app_1 | webpack: Compiled successfully.