从码头开始npm开始?

时间:2017-10-14 10:58:51

标签: node.js docker npm

嗨我正在用npm运行一个基本的反应项目,我正试图在一个docker容器中启动它。但是我实际上无法让项目运行。我的dockerfile如下所示:

FROM node:7.8.0


WORKDIR /

ADD . /


EXPOSE 80


RUN npm install

ENTRYPOINT npm run start

我收到相关消息说现在可以查看该项目,但在浏览器中没有显示任何内容。任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:2)

我怀疑您的docker run命令中的端口可能是倒退的。如果您在端口6000上运行您的react应用程序,并希望在端口80上将其暴露给外部,那么您应该运行容器...

docker run -p 80:6000 myapp

用法:docker run -p <HOST_PORT>:<CONTAINER_PORT> <APP_NAME>

答案 1 :(得分:0)

通过将npm start修改为package.json(第6行)解决了类似的问题。

尝试在ng服务后添加-主机0.0.0.0

private static async sendMessageToToken(deviceToken: DeviceToken, chat: Chat, senderId: string) { const senderMessage: Message = chat.messages.find((msg: Message) => msg.userId === senderId); const message = senderMessage.message; const user: User = await getRepository(User).findOneOrFail(senderMessage.userId); const image = user.image; const title = user.username; console.log("TAG: " + chat.id); await admin.messaging().send({ token: deviceToken.deviceToken, data: { chatId: chat.id, senderId: senderId }, notification: { title: title, body: message }, android: { notification: { title: '[' + title + ']', body: message, icon: image, tag: chat.id } } }) }

最后,用"start": "ng serve --host 0.0.0.0",

进行调试

这可能被称为网络套接字问题