我的Docker学习之路2
目的:将前台页面打包到Docker镜像里面去
环境准备:前端应用使用 NPM 编译,除了安装 node.js ,还需要配置使用国内的镜像,Windows 下需要手工安装 nvm ,然后使用以下命令切换 node 和 npm 版本:
nvm全名node.js version management,顾名思义是一个nodejs的版本管理工具。通过它可以安装和切换不同版本的nodejs。下面列出下载、安装及使用方法。
下载nvm-setup.exe ,之后安装
一路next就好,如果有路径变化就改一下
nvm install 8.11.1
nvm use 8.11.1
nrm 是一个 npm 源管理器,允许你快速地在 npm源间切换。什么意思呢,npm默认情况下是使用npm官方源(使用npm config ls命令可以查看),在国内用这个源肯定是不靠谱的,一般我们都会用淘宝npm源:https://registry.npm.taobao.org/,修改源的方式也很简单
npm install -g nrm
nrm use taobao
之后进入自己的项目目录下,执行下面命令
npm install
set NODE_OPTIONS=--max_old_space_size=4096
npm run build
编译得过程时间很长,我得变成完成后有warning,没有报错,所以我就继续进行下一步了
注意版本,较高版本会出现许多错误;set 为windows命令,linux 下需要修改成 export
根目录准备 .dockerignore 文件:--我是自己创建得,包含下面内容
node_modules
docs
.history
.vscode
e2e
src
根目录准备 Dockerfile 文件: --这也是我自己创建得,内容如下
FROM nginx
COPY dist /usr/share/nginx/html
构建镜像: zcp30-web-erp是你构建得镜像名称
docker build -t zcp30-web-erp .
运行:
docker run -d -p 8090:80 zcp30-web-erp
如果可以正常访问 localhost:8090 ,说明已经可以使用。
----前台构建过程,到这里就结束了