文章目录
背景
为什么选择使用nvm?
我们可能需要在服务器部署多个前端项目,而不同的项目所使用的node版本又是不一样的,不同版本的node的兼容性是不一样的。这种情况下,对于维护多个版本的node将会是一件非常麻烦的事情,而nvm就是为解决这个问题而产生的,他可以方便的在同一台设备上进行多个node版本之间切换。
前端项目部署基本上只需要node就可以了,为什么选择docker环境?
- 为了与宿主机解耦,docker容器相对独立。
- 现在使用的centos+git+nvm的环境,以后可以随时进行环境扩展。
- 统一前端的部署工具。
docker 构建centos7+git+nvm环境
- 使用Dockerfile构建镜像
# 依赖centos环境
FROM centos:latest
#安装vim、git和nvm环境
RUN yum -y update \
&& yum -y install vim \
&& yum -y install git \
&& git --version \
&& cd ~/ \
&& git clone https://github.com.cnpmjs.org/nvm-sh/nvm.git .nvm \
&& cd ~/.nvm && git checkout v0.35.3 \
&& echo "source ~/.nvm/nvm.sh" >> ~/.bashrc && source ~/.bashrc
- 编写初始化脚本,初始化docker容器,将“ /root/project ”目录(项目统一放置文件夹,位置可更换)映射进容器
#!/bin/bash
# 镜像名字
IMAGE_NAME=centos_git_nvm
# docker 容器名字或者jar名字,这里都命名为这个
SERVER_NAME=centos_git_nvm_node
#使用说明,用来提示输入参数
usage() {
echo "Usage: sh 执行脚本.sh [init]"
exit 1