I'm trying to setup development environment and run Vue3 Vite app inside Docker container. I also would like to have ability to "attach" to that app and make use of VS Code debugging. I found some info how to do that, but after I implemented these changes the app is not openning anymore, the page is blank when I go to website. The port (8080) is open, I checked it with telnet.
This is what I've done:
package.json
"debug": "node --inspect-brk=0.0.0.0:9229 node_modules/vite/bin/vite.js",
vite.config.js
server: {
...
hmr: { host: '0.0.0.0' },
}
Dockerfile
EXPOSE $VITE_PORT 9229
CMD npm run debug
There is no errors in docker logs.
> [email protected] debug
> node --inspect-brk=0.0.0.0:9229 node_modules/vite/bin/vite.js
Debugger listening on ws://0.0.0.0:9229/53fba2df-2147-4ed4-a493-daa9ff2b3a88
For help, see: https://nodejs.org/en/docs/inspector
Debugger attached.
VITE v4.3.9 ready in 1037 ms
➜ Local: http://localhost:8080/
➜ Network: use --host to expose
Debugger ending on ws://0.0.0.0:9229/53fba2df-2147-4ed4-a493-daa9ff2b3a88
For help, see: https://nodejs.org/en/docs/inspector
(venv) user:~/project/frontoffice$
UPDATE:
npm run dev
works inside docker--inspect
and --inspect-brk
npm run debug
locally, without dockernetstat
from dockerroot@c87845a98941:/app# netstat -tuln
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 127.0.0.11:39369 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:9229 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:8080 0.0.0.0:* LISTEN
udp 0 0 127.0.0.11:56572 0.0.0.0:*
telnet localhost 8080
from host$ telnet localhost 8080
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
Connection closed by foreign host.
I finally made it working, I needed --host
flag
"debug": "node --inspect=0.0.0.0:9229 node_modules/vite/bin/vite.js --host --port 8080"