gpt4 book ai didi

node.js - Dockerized Node 应用程序不提供静态内容

转载 作者:太空宇宙 更新时间:2023-11-03 22:32:45 25 4
gpt4 key购买 nike

我最近将我的 Nodejs 应用程序移动到了 Docker 容器中。一切工作正常,除了静态文件(例如 Bower 组件)不会被加载(404)。

怎么了?

在我的 Node 应用程序中:

app.use('/static', express.static(__dirname + '/../public'));

我的.bowerrc

{
"directory": "public/lib"
}

Bower 下载所有文件并将其安装在正确的目录中。我自己在 docker 容器内检查过。

我的dockerfile:

FROM node:4-onbuild
COPY . /src
RUN cd /src/ && npm install && bower install --allow-root
RUN ["node", "/src/server.js"]
EXPOSE 3000

最佳答案

我之前遇到过类似的问题,这是 Bower 而不是 docker 容器的问题,Bower 不能很好地使用 root 权限,您需要使用 Node 安装命令安装所有依赖项。将 Node 和 Angular 依赖项合并到一个 package.json 中,并使用 Node 的 package.json 触发 Bower它可能会解决你的问题。

关于node.js - Dockerized Node 应用程序不提供静态内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34203046/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com