linux安装nodejs脚本,CentOS一键编译安装 NodeJS脚本

#!/bin/bash

##############################################################################

# Build develop enviroment for running npm and nodejs

#

# version="1.0.0"

# node="v8"

# os="CentOS v7.4"

# user=“dev”

# description="Node v8 compiled from source running on CentOS v7.4"

##############################################################################

##############################################################################

# If is root

##############################################################################

if [ "$(whoami)" != 'root' ]; then

echo "install need root user"

exit

fi

##############################################################################

# Export enviroment variant

##############################################################################

export TERM=xterm

export NLS_LANG=American_America.AL32UTF8

export LANG=C # C.UTF-8

export LANGUAGE=C # C.UTF-8

export LC_ALL=C # C.UTF-8

export TIMEZONE=Asia/Shanghai

##############################################################################

# Build variant

##############################################################################

NODE_VERSION=v8.11.3

NODE_PREFIX=/usr/local

##############################################################################

# Setup build enviroment

##############################################################################

yum -y update

yum -y install \

ca-certificates \

gcc \

gcc-c++ \

gnupg \

libgcc \

libstdc++ \

kernel-headers \

openssl \

openssl-devel \

mercurial \

subversion \

git

##############################################################################

# Install Node & NPM

##############################################################################

# Download and validate the NodeJs source

for key in \

94AE36675C464D64BAFA68DD7434390BDBE9B9C5 \

FD3A5288F042B6850C66B31F09FE44734EB7990E \

71DCFD284A79C3B38668286BC97EC7A07EDE3FC1 \

DD8F2338BAE7501E3DD5AC78C273792F7D83545D \

C4F0DFFF4E8C1A8236409D08E73BC641CC11F4C8 \

B9AE9905FFD7803F25714661B63B535A4C206CA9 \

56730D5401028683275BD23C23EFEFE93C4CFFFE \

; do \

gpg --keyserver pgp.mit.edu --recv-keys "$key"|| \

gpg --keyserver keyserver.pgp.com --recv-keys "$key" || \

gpg --keyserver ha.pool.sks-keyservers.net --recv-keys "$key" ; \

done

mkdir /node_src

cd /node_src

curl -o node-${NODE_VERSION}.tar.gz -sSL https://nodejs.org/dist/${NODE_VERSION}/node-${NODE_VERSION}.tar.gz

curl -o SHASUMS256.txt.asc -sSL https://nodejs.org/dist/${NODE_VERSION}/SHASUMS256.txt.asc

gpg --verify SHASUMS256.txt.asc

grep node-${NODE_VERSION}.tar.gz SHASUMS256.txt.asc | sha256sum -c -

# Compile and install

cd /node_src

tar -zxf node-${NODE_VERSION}.tar.gz

cd node-${NODE_VERSION}

./configure --prefix=${NODE_PREFIX}

#./configure

NPROC=$(grep -c ^processor /proc/cpuinfo 2>/dev/null || 1)

make -j${NPROC}

make install

# Set PATH enviroment variant

export PATH=${PATH}:${NODE_PREFIX}/bin

# Add the environment variable to /etc/profile

echo "export PATH=${PATH}:${NODE_PREFIX}/bin" >> /etc/profile

##############################################################################

# Install Package use NPM

##############################################################################

npm config set unsafe-perm true \

npm config set strict-ssl false \

npm config set registry https://registry.npm.taobao.org

# npm config set proxy http://xx@xx.com:xxxx

# npm config set https-proxy=http://xx@xx.com:xxxx

# Install node packages

npm install -g \

gulp-cli \

grunt-cli \

markdown-styles \

yarn

##############################################################################

# Setup users

##############################################################################

groupadd dev

useradd -s /bin/bash -g dev dev

echo "dev:password" | chpasswd

##############################################################################

# Clean up

##############################################################################

find ${NODE_PREFIX}/lib/node_modules/npm -name test -o -name .bin -type d | xargs rm -rf

rm -rf \

/node_src \

/tmp/* \

/var/cache/yum/* \

${NODE_PREFIX}/lib/node_modules/npm/man \

${NODE_PREFIX}/lib/node_modules/npm/doc \

${NODE_PREFIX}/lib/node_modules/npm/html

#!/bin/bash

##############################################################################

# Build develop enviroment for running npm and nodejs

#

# version="1.0.0"

# node="v8"

# os="CentOS v7.4"

# user=“dev”

# description="Node v8 compiled from source running on CentOS v7.4"

##############################################################################

##############################################################################

# If is root

##############################################################################

if [ "$(whoami)" != 'root' ]; then

echo "install need root user"

exit

fi

##############################################################################

# Export enviroment variant

##############################################################################

export TERM=xterm

export NLS_LANG=American_America.AL32UTF8

export LANG=C # C.UTF-8

export LANGUAGE=C # C.UTF-8

export LC_ALL=C # C.UTF-8

export TIMEZONE=Asia/Shanghai

##############################################################################

# Build variant

##############################################################################

NODE_VERSION=v8.11.3

NODE_PREFIX=/usr/local

##############################################################################

# Setup build enviroment

##############################################################################

yum -y update

yum -y install \

ca-certificates \

gcc \

gcc-c++ \

gnupg \

libgcc \

libstdc++ \

kernel-headers \

openssl \

openssl-devel \

mercurial \

subversion \

git

##############################################################################

# Install Node & NPM

##############################################################################

# Download and validate the NodeJs source

for key in \

94AE36675C464D64BAFA68DD7434390BDBE9B9C5 \

FD3A5288F042B6850C66B31F09FE44734EB7990E \

71DCFD284A79C3B38668286BC97EC7A07EDE3FC1 \

DD8F2338BAE7501E3DD5AC78C273792F7D83545D \

C4F0DFFF4E8C1A8236409D08E73BC641CC11F4C8 \

B9AE9905FFD7803F25714661B63B535A4C206CA9 \

56730D5401028683275BD23C23EFEFE93C4CFFFE \

; do \

gpg --keyserver pgp.mit.edu --recv-keys "$key"|| \

gpg --keyserver keyserver.pgp.com --recv-keys "$key" || \

gpg --keyserver ha.pool.sks-keyservers.net --recv-keys "$key" ; \

done

mkdir /node_src

cd /node_src

curl -o node-${NODE_VERSION}.tar.gz -sSL https://nodejs.org/dist/${NODE_VERSION}/node-${NODE_VERSION}.tar.gz

curl -o SHASUMS256.txt.asc -sSL https://nodejs.org/dist/${NODE_VERSION}/SHASUMS256.txt.asc

gpg --verify SHASUMS256.txt.asc

grep node-${NODE_VERSION}.tar.gz SHASUMS256.txt.asc | sha256sum -c -

# Compile and install

cd /node_src

tar -zxf node-${NODE_VERSION}.tar.gz

cd node-${NODE_VERSION}

./configure --prefix=${NODE_PREFIX}

#./configure

NPROC=$(grep -c ^processor /proc/cpuinfo 2>/dev/null || 1)

make -j${NPROC}

make install

# Set PATH enviroment variant

export PATH=${PATH}:${NODE_PREFIX}/bin

# Add the environment variable to /etc/profile

echo "export PATH=${PATH}:${NODE_PREFIX}/bin" >> /etc/profile

##############################################################################

# Install Package use NPM

##############################################################################

npm config set unsafe-perm true \

npm config set strict-ssl false \

npm config set registry https://registry.npm.taobao.org

# npm config set proxy http://xx@xx.com:xxxx

# npm config set https-proxy=http://xx@xx.com:xxxx

# Install node packages

npm install -g \

gulp-cli \

grunt-cli \

markdown-styles \

yarn

##############################################################################

# Setup users

##############################################################################

groupadd dev

useradd -s /bin/bash -g dev dev

echo "dev:password" | chpasswd

##############################################################################

# Clean up

##############################################################################

find ${NODE_PREFIX}/lib/node_modules/npm -name test -o -name .bin -type d | xargs rm -rf

rm -rf \

/node_src \

/tmp/* \

/var/cache/yum/* \

${NODE_PREFIX}/lib/node_modules/npm/man \

${NODE_PREFIX}/lib/node_modules/npm/doc \

${NODE_PREFIX}/lib/node_modules/npm/html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值