Maison > interface Web > js tutoriel > Explication détaillée de la façon de déployer des projets Nodejs sur des serveurs Linux

Explication détaillée de la façon de déployer des projets Nodejs sur des serveurs Linux

青灯夜游
Libérer: 2021-05-11 09:58:20
avant
3640 Les gens l'ont consulté

Cet article présente en détail la méthode de déploiement de projets Nodejs sur Linux et vous apprend étape par étape comment déployer des projets NodeJs sur des serveurs Linux. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer. J'espère qu'il sera utile à tout le monde.

Explication détaillée de la façon de déployer des projets Nodejs sur des serveurs Linux

Connectez-vous au serveur

Utilisez GitBash ou Xshell ou CMD pour vous connecter au serveur

ssh 用户名@ip地址
Copier après la connexion

Si vous utilisez le serveur pour la première fois, mettez-le d'abord à jour. Les programmes suivants utilisent essentiellement la méthode d'installation de la Yum source :

yum update -y
Copier après la connexion

Commande Yum<🎜. >
// 1 安装 
yum install package  // 安装指定的安装包package 

// 2 更新和升级 
yum update  // 全部更新 
yum update package  // 更新指定程序包package
yum check-update  // 检查可更新的程序 
yum upgrade package  // 升级指定程序包package 

// 3 查找和显示 
yum info // 列出所有可以安装或更新的包的信息
yum info package //显示安装包信息package 
yum list // 显示所有已经安装和可以安装的程序包 
yum list package  // 显示指定程序包安装情况package
yum search package // 搜索匹配特定字符的package的详细信息

// 4 删除程序 
yum remove | erase package  // 删除程序包package
yum deplist package  // 查看程序package依赖情况

// 5 清除缓存 
yum clean packages  // 清除缓存目录下的软件包 
yum clean headers // 清除缓存目录下的 headers 
yum clean oldheaders // 清除缓存目录下旧的 headers 
yum clean, yum clean all  // (= yum clean packages; yum clean oldheaders) 清除缓存目录下的软件包及旧的headers
Copier après la connexion

Installation de Git

Installer sous le serveur

 ; la façon de développer le serveur de téléchargement de code source peut utiliser la méthode traditionnelle git ou scp , mais ici le flux ftp est utilisé pour la gestion, sur le serveur Effectuez l'opération Git sur le client git

Vérifiez si git est installé
rpm -qa|grep git
或者
 git --version
或者
 yum info git
Copier après la connexion

Explication détaillée de la façon de déployer des projets Nodejs sur des serveurs Linux

Explication détaillée de la façon de déployer des projets Nodejs sur des serveurs Linux

S'il est déjà installé, vous devez d'abord le désinstaller. La commande de désinstallation est la suivante :

rpm -e --nodeps git 或者 rpm -e git

Explication détaillée de la façon de déployer des projets Nodejs sur des serveurs Linux

2.2 Installer Git

yum install git

.

Explication détaillée de la façon de déployer des projets Nodejs sur des serveurs Linux

输入y,并回车

Explication détaillée de la façon de déployer des projets Nodejs sur des serveurs Linux

Utilisez ensuite

ou rpm -qa|grep git pour vérifier si Git a été installé. git version

Explication détaillée de la façon de déployer des projets Nodejs sur des serveurs Linux

2.3. Cloner le projet distant sur le serveur

Installation du nœud

sous le serveur Pour installer, choisissez l'une des méthodes suivantes pour déployer l'environnement Node.js

3.1 Installer à l'aide de fichiers binaires

Le package d'installation utilisé dans celui-ci ; le processus de déploiement est un fichier binaire compilé. Après décompression,

et node existent déjà dans le dossier bin, il n'est donc pas nécessaire de recompiler. Effectuez les opérations suivantes pour déployer l'environnement Node.js à l'aide de binaires : Téléchargez le package d'installation de Node.js npm

wget

nodejs.org/dist/v6.9.5…

Décompressez le fichier

tar xvf node-v6.9.5-linux-x64.tar.xz
Copier après la connexion

Créez un lien symbolique et vous pourrez utiliser directement les commandes

et node dans n'importe quel répertoire npm

ln -s /root/node-v6.9.5-linux-x64/bin/node /usr/local/bin/node
ln -s /root/node-v6.9.5-linux-x64/bin/npm /usr/local/bin/npm
Copier après la connexion

pour afficher les versions

et node npm

node -v
npm -v
Copier après la connexion

à À ce stade, l'installation de l'environnement Node.js est terminée. Le logiciel est installé par défaut dans le répertoire

/root/node-v6.9.5-linux-x64/

Si vous devez installer le logiciel dans un autre répertoire (par exemple :

), veuillez procéder comme suit : /opt/node/

mkdir -p /opt/node/
mv /root/node-v6.9.5-linux-x64/* /opt/node/
rm -f /usr/local/bin/node
rm -f /usr/local/bin/npm
ln -s /opt/node/bin/node /usr/local/bin/node
ln -s /opt/node/bin/npm /usr/local/bin/npm
Copier après la connexion

3.2, Utiliser NVM pour gérer plusieurs versions (yum installation)

NVM (Node Version Manager) est un logiciel de gestion de versions pour Node.js qui vous permet de basculer facilement entre les différentes versions de Node. js. Convient aux personnes qui développent des nœuds depuis longtemps ou qui ont besoin de mettre à jour rapidement les versions de nœuds ou de changer rapidement de version de nœud

Effectuez les opérations suivantes et utilisez NVM pour installer plusieurs versions de Node.js :

Utilisez git pour cloner le code source dans le répertoire

local et vérifiez la dernière version ~/.nvm

yum install git

git clone https://github.com/cnpm/nvm.git ~/.nvm && cd ~/.nvm && git checkout `git describe --abbrev=0 --tags`
Copier après la connexion

Activer NVM

echo ". ~/.nvm/nvm.sh" >> /etc/profile
source /etc/profile
Copier après la connexion

Liste de toutes les versions de Node.js

nvm list-remote
Copier après la connexion

Installez plusieurs versions de Node.js

nvm install v14.0.0 -g
nvm install v14.10.0 -g
Copier après la connexion

Exécutez

pour afficher la version de Node.js installée. La version actuelle est la v7.4.0. Le résultat renvoyé est le suivant nvm ls

[root@iZXXXXZ .nvm]# nvm ls
      v6.9.5
->    v7.4.0
      system
stable -> 7.4 (-> v7.4.0) (default)
unstable -> 6.9 (-> v6.9.5) (default)
Copier après la connexion

Exécutez

pour basculer la version de Node.js vers nvm use v7.4.0. Les résultats renvoyés sont les suivants. v7.4.0

[root@iZXXXXZ .nvm]# nvm use v7.4.0
Now using node v7.4.0
Copier après la connexion

Déploiement Nginx

installation sous le serveur ;

sudo yum install -y nginx
// 检测是否安装成功,验证 Nginx 配置是否正确;
nginx -t

启动命令 service nginx start
停止命令 service nginx stop
重启命令 service nginx restart
# config: /etc/nginx/nginx.conf 安装目录
# config: /etc/sysconfig/nginx
# pidfile: /var/run/nginx.pid
日志文件在var/log/nginx
Copier après la connexion

Installation Pm2

installation au sein du project , cd au projet ;

npm i pm2 -g
Copier après la connexion

Démarrer le projet

pm2 start app // 实际执行文件在app 工程下的 index.js
Copier après la connexion

pm2 Commandes communes :

// 安装
sudo npm i pm2 -g
 --watch:监听文件变化
 // 2表示启动多少实例
pm2 start app.js --watch i 2
 // 根据机器cpu核心数最大限度利用资源
pm2 start app -i max

 // 查看运行的进程
pm2 ls

 // 关闭
pm2 stop app
pm2 stop all

// 重启
pm2 restart app
Copier après la connexion

Nous pouvons également construire un

dans le fichier de configuration du projet process.yml

apps:
  - script : app.js
    intance : 2
    watch : true
    env : 
      NODE_ENV : production
Copier après la connexion

puis exécutez

pm2 start process.yml
Copier après la connexion

Installation de MongoDB

Installer dans le projet ; utilisez l'installation des sources Yum

<🎜 ; >

Configurer la source yum du système

vi /etc/yum.repos.d/mongodb-org-4.4.repo Ajoutez les informations suivantes :

[mongodb-org-4.4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.4.asc


name         # 名称
baseurl      # 获得下载的路径
gpkcheck=1   # 表示对从这个源下载的rpm包进行校验;
enable=1     # 表示启用这个源。
gpgkey       # gpg验证
Copier après la connexion

Dernière

Adresse de configuration :

docs.mongodb.com/manual/tuto…

保存退出:
:wq

退出不保存
:wq!
Copier après la connexion

安装MongoDB

sudo yum install -y mongodb-org
Copier après la connexion

验证

rpm -qa |grep mongodb

rpm -ql mongodb-org-server
Copier après la connexion

运行结果分别如下图:

Explication détaillée de la façon de déployer des projets Nodejs sur des serveurs Linux

启动MongoDB(常用指令)

// 开启MongoDB
sudo service mongod start  或者
systemctl start mongod.service  

sudo chkconfig mongod on  # 加入开机启动
sudo service mongod restart # 重启MongoDB

// 关闭MongoDB
sudo service mongod stop  # 关闭防火墙

// 卸载MongoDB
sudo yum erase $(rpm -qa | grep mongodb-org)    # 卸载MongoDB
sudo rm -r /var/log/mongodb  # 删除日志文件
sudo rm -r /var/lib/mongo    # 删除数据文件
Copier après la connexion

实现远程连接Mongodb

修改绑定 ip 默认127.0.0.1 只允许本地连接, 所以修改为 bindIp:0.0.0.0,退出保存;.1

vi /etc/mongod.conf

// 编辑以下内容
// network interfaces
net:
  port: 27017
  bindIp: 0.0.0.0  # Enter 0.0.0.0,:: to bind to all IPv4 and IPv6 addresses or, alternatively, use the net.bindIpAll setting.
Copier après la connexion

重启MongoDB

sudo service mongod restart 
复制代码
Copier après la connexion

开放对外端口,关闭防火墙

iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 27017 -j ACCEPT
Copier après la connexion

远程连接

// 启动 MongoDB 服务,后面是服务器公网 ip 地址 + 默认端口 27017
mongo 10.128.218.14:27017
Copier après la connexion

1.0 创建用户,设置账号,密码,权限

// admin数据库(管理使用)
> use admin
switched to db admin
> db.createUser({ user:"root", pwd:"123456", roles:["root"] })
Successfully added user: { "user" : "root", "roles" : [ "root" ] }

// 其他数据库 test (用作开发使用)
> use test
switched to db test
> db.createUser({ user:"admin", pwd:"123456", roles:["readWrite", "dbAdmin"] })
Successfully added user: { "user" : "root", "roles" : [ "root" ] }
Copier après la connexion

2.0 修改 mongodb.conf 文件,启用身份验证

vi /etc/mongod.conf

security:
  authorization: "enabled"   # disable or enabled
Copier après la connexion

3.0 重启 MongoDB

sudo service mongod restart
Copier après la connexion

4.0 用户认证

> use admin
switched to db admin
> db.auth("root", "123456")
1 // 授权成功
 
// 其他常用命令
db.updateUser(user, writeConcern) # 更新用户
db.dropUser(&#39;test&#39;) # 删除用户
Copier après la connexion

5.0 远程连接

// 终端连接
mongo 10.128.218.14:27017/database -u username -p password

// mongoose方式连接(项目内的方式)
mongoose.connect(&#39;mongodb://admin:123456@10.128.218.14:27017/test?options...&#39;, {useNewUrlParser: true});

# 用户名:密码@域名或者服务器公网IP:端口/数据库名称?配置项
Copier après la connexion

Window本地启动 MongoDB:

1.0 管理员身份打开 cmd ;

2.0 进入本地 MongoDB 安装目录 cd C:\Program Files\MongoDB\Server\4.4

3.0 执行 net start mongodb

Explication détaillée de la façon de déployer des projets Nodejs sur des serveurs Linux

其他命令

1、端口被占用了:检查端口占用命令. 根据报错提示, 我这里检查的是 4000 端口:

lsof -i:4000
Copier après la connexion

Explication détaillée de la façon de déployer des projets Nodejs sur des serveurs Linux

2、杀掉当前进程

kill 2805
Copier après la connexion

在执行

npm run dev
Copier après la connexion

可以了!!! 查看服务器个程序占用内存大小

du -h --max-depth=1
Copier après la connexion

Explication détaillée de la façon de déployer des projets Nodejs sur des serveurs Linux

Linux shell 脚本

自己编写服务运行脚本,直接在服务器上运行,下面是运行指令,脚本内容这里就不展示了,可以自己补充 xshell 脚本相关知识。

sh run.sh // 启动服务脚本;
sh stop.sh // 启动服务脚本;
netstat -nltp  // 当前服务器端口状态;
Copier après la connexion

更多编程相关知识,请访问:编程入门!!

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:juejin.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal