node tengine 做一个镜像的 Dockerfile
时间: 2024-06-08 15:09:03 浏览: 151
docker Dockerfile文件制作自己的镜像的方法
以下是使用 node tengine 构建 Docker 镜像的示例 Dockerfile:
```
FROM nginx:latest
RUN apt-get update && apt-get install -y wget && \
wget http://tengine.taobao.org/download/tengine-2.3.2.tar.gz && \
tar -xzvf tengine-2.3.2.tar.gz && \
cd tengine-2.3.2 && \
./configure --with-http_ssl_module --with-http_v2_module --prefix=/usr/local/nginx && \
make && make install && \
cd .. && \
rm -rf tengine-2.3.2.tar.gz tengine-2.3.2 && \
apt-get remove -y wget && \
apt-get autoremove -y && \
rm -rf /var/lib/apt/lists/*
RUN npm install -g cnpm --registry=https://registry.npm.taobao.org
WORKDIR /app
COPY . .
RUN cnpm install
RUN npm run build
RUN cp -r dist/* /usr/local/nginx/html/
EXPOSE 80
CMD ["/usr/local/nginx/sbin/nginx", "-g", "daemon off;"]
```
这个 Dockerfile 中首先基于官方的 nginx 镜像构建了一个新的镜像,然后安装了 wget 工具,并下载、编译、安装了 tengine。
接着安装了 cnpm 工具,并将工作目录切换到 /app,将应用程序文件复制到容器中,并执行了 cnpm install 和 npm run build 命令来安装依赖和构建应用程序。
最后将构建好的应用程序文件复制到 /usr/local/nginx/html/ 目录下,并暴露了容器的 80 端口,并在 CMD 命令中启动了 nginx 服务。
阅读全文