目前,我们正在使用大小约为 642 MB 的 node:4.2.3 (LTS) docker 镜像和大约 140 MB 的 node_modules 总共约 800 MB 来构建我们的 Web 应用程序 docker 镜像。
将这些图像发布到我们的私有注册表并将它们拉到所有环境中成为一个耗时的过程。
由于我们无法减少 node_modules 的大小(如果有任何减少方法可用,这将很有帮助)寻找在所有环境(包括生产)中使用任何其他节点 docker 映像的建议。
目前,我们正在使用大小约为 642 MB 的 node:4.2.3 (LTS) docker 镜像和大约 140 MB 的 node_modules 总共约 800 MB 来构建我们的 Web 应用程序 docker 镜像。
将这些图像发布到我们的私有注册表并将它们拉到所有环境中成为一个耗时的过程。
由于我们无法减少 node_modules 的大小(如果有任何减少方法可用,这将很有帮助)寻找在所有环境(包括生产)中使用任何其他节点 docker 映像的建议。
您可以使用以下Dockerfile构建自己的docker 映像:
FROM ubuntu:14.04
RUN sudo apt-get update && sudo apt-get install -y wget
# install node v4.2.6
RUN wget https://nodejs.org/dist/v4.2.6/node-v4.2.6-linux-x64.tar.gz && \
tar -C /usr/local --strip-components 1 -xzf node-v4.2.6-linux-x64.tar.gz && \
rm node-v4.2.6-linux-x64.tar.gz
# install express 4.13.4
RUN npm install express@4.13.4
使用以下命令构建镜像:
sudo docker build -t ubuntu-node .
图片只有255MB
REPOSITORY TAG IMAGE ID CREATED SIZE
ubuntu-node latest 7ed1b88adb46 7 seconds ago 255 MB
当然,您可以安装任何必要的依赖项。