Node.js Dockerfile在docker容器中运行nodejs静态内容
需要建议在K8s集群上dockerize和运行node JS静态内容应用程序 我有一个静态web内容,我运行“npm run build”到终端,终端生成/build并将我的IIS web服务器定向到/build/Index.html 现在,我开始创建一个Docker文件,如何将我的nodeJS图像指向调用/build/Index.html文件Node.js Dockerfile在docker容器中运行nodejs静态内容,node.js,docker,npm,kubernetes,Node.js,Docker,Npm,Kubernetes,需要建议在K8s集群上dockerize和运行node JS静态内容应用程序 我有一个静态web内容,我运行“npm run build”到终端,终端生成/build并将我的IIS web服务器定向到/build/Index.html 现在,我开始创建一个Docker文件,如何将我的nodeJS图像指向调用/build/Index.html文件 FROM node:carbon WORKDIR /app COPY /Core/* ./app npm run build EXPOSE 8080 C
FROM node:carbon
WORKDIR /app
COPY /Core/* ./app
npm run build
EXPOSE 8080
CMD [ "node", ".app/build/index.html" ]
请问如何仅在节点v8.9.3和上运行此应用程序
npm 5.6.0
是否有任何输入?您可以具体指定节点的版本:
FROM node:8.9.3
假设:
package.json
位于code
目录下npm run build
将在容器外部运行,并且将在code
目录中创建一个build
目录/app
目录下的整个code/build
目录package.json
复制到/app
文件夹中,并通过package.json
文件中提供的脚本运行网站package.json
中添加一个名为start
的script
,并从Dockerfile的CMD
命令调用该脚本。该脚本如下所示:
"scripts": {
"start": "node ./index.html",
},
FROM node:8.9.3
# Make app directory in the container.
RUN MKDIR /app
# Copy whole code to app directory.
COPY Code/build/ /app
# Copy package.json app directory.
COPY package.json /app
# make app directory as the working directory.
WORKDIR /app
# Install dependencies.
RUN npm install -only=production
# Expose the port
EXPOSE 8080
# Start the process
CMD ["npm", "start"]
而Dockerfile
将如下所示:
"scripts": {
"start": "node ./index.html",
},
FROM node:8.9.3
# Make app directory in the container.
RUN MKDIR /app
# Copy whole code to app directory.
COPY Code/build/ /app
# Copy package.json app directory.
COPY package.json /app
# make app directory as the working directory.
WORKDIR /app
# Install dependencies.
RUN npm install -only=production
# Expose the port
EXPOSE 8080
# Start the process
CMD ["npm", "start"]
@Mishra-谢谢。我创建了相同的,它会创建一个映像,但在Docker运行时,容器不会启动。因为“npm run build”会将我的所有二进制文件生成到/build文件夹,npm引擎应该选择index.html(package.json指向index.html),所以我在安装依赖项后添加了“npm run build”。我得到了一些错误
[13:23:24]水管工发现未处理的错误:错误:错误:找不到带有单数glob的文件:/build/content/styles/bootstrap/bootstrap\u modal.css[13:23:24]水管工发现未处理的错误。我如何修复它?