我正在尝试从Docker启动节点服务器。 这就是我们构建docker映像的方式。
Step 1/6 : FROM node:carbon
---> 4f01e5319662
Step 2/6 : WORKDIR /usr/src/app
---> Using cache
---> 2a1ba8949c20
Step 3/6 : COPY package*.json ./
---> Using cache
---> 2a42784819a8
Step 4/6 : RUN npm install
---> Using cache
---> b54763a7afba
Step 5/6 : EXPOSE 3002
---> Using cache
---> 50a96a437e52
Step 6/6 : CMD [ "npm", "start" ]
---> Using cache
---> 2963362f9224
Successfully built 2963362f9224
Successfully tagged sf2backend:latest
像
这样的起始图片docker run -it -v ${PWD}:/usr/src/app -v /usr/src/app/node_modules -p 3002:3001 --rm sf2backend
请注意,我正在将端口从3002映射到3001(服务器正在侦听3001)
我还在server.js上输入了服务器IP和主机like this
https.createServer(options, app).listen(3001,'0.0.0.0');
IP表似乎很好地反映了我的映射。
Chain PREROUTING (policy ACCEPT)
target prot opt source destination
DOCKER all -- 0.0.0.0/0 0.0.0.0/0 ADDRTYPE
match dst-type LOCAL
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
DOCKER all -- 0.0.0.0/0 !127.0.0.0/8 ADDRTYPE
match dst-type LOCAL
Chain POSTROUTING (policy ACCEPT)
target prot opt source destination
MASQUERADE all -- 172.17.0.0/16 0.0.0.0/0
MASQUERADE all -- 172.18.0.0/16 0.0.0.0/0
MASQUERADE tcp -- 172.17.0.2 172.17.0.2 tcp dpt:3001
Chain DOCKER (2 references)
target prot opt source destination
RETURN all -- 0.0.0.0/0 0.0.0.0/0
RETURN all -- 0.0.0.0/0 0.0.0.0/0
DNAT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:3002 to:172.17.0.2:3001
但是我仍然无法在以下位置查看该应用程序 https://localhost:3002
服务器无响应,服务器日志无错误。