ホームページ  >  記事  >  ウェブフロントエンド  >  Linux サーバーに Nodejs プロジェクトをデプロイする方法の詳細な説明

Linux サーバーに Nodejs プロジェクトをデプロイする方法の詳細な説明

青灯夜游
青灯夜游転載
2021-05-06 10:34:573605ブラウズ

この記事では、Linux に Nodejs プロジェクトをデプロイする方法を詳しく紹介し、Linux サーバーに NodeJs プロジェクトをデプロイする方法を段階的に説明します。一定の参考値があるので、困っている友達が参考になれば幸いです。

Linux サーバーに Nodejs プロジェクトをデプロイする方法の詳細な説明

サーバーにログインします

GitBash または XXshell または CMD 端末がログインしてサーバーに接続するのを待ちます

ssh 用户名@ip地址

初めてサーバーを使用する場合は、最初に更新してください。次のプログラムは基本的に Yum ソースのインストール方法:

yum update -y

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

#Git のインストール

サーバー配下にインストール

git ; ソース コード アップロード サーバーを開発する従来の方法 scp または ftp メソッドを使用できますが、ここでは Git フローを使用して管理し、 git 操作はサーバー側で実行されます;

2.1. git がインストールされているかどうかを確認します
rpm -qa|grep git
或者
 git --version
或者
 yum info git

Linux サーバーに Nodejs プロジェクトをデプロイする方法の詳細な説明

Linux サーバーに Nodejs プロジェクトをデプロイする方法の詳細な説明すでにインストールされている場合は、まずアンインストールする必要があります。アンインストール コマンドは次のとおりです:

rpm -e --nodeps git または rpm -e git

Linux サーバーに Nodejs プロジェクトをデプロイする方法の詳細な説明

2.2. Git をインストールします。

yum install git

Linux サーバーに Nodejs プロジェクトをデプロイする方法の詳細な説明

y と入力して Enter を押します

Linux サーバーに Nodejs プロジェクトをデプロイする方法の詳細な説明## 次に、

rpm -qa|grep git

または git version を使用して、Git がインストールされているかどうかを確認します。

Linux サーバーに Nodejs プロジェクトをデプロイする方法の詳細な説明#2.3. リモート プロジェクトのクローンをサーバーに作成する

ノードのインストール

インストールするには、次のいずれかの方法を選択して Node.js 環境をデプロイします;

3.1. バイナリ ファイルを使用したインストール

このインストール パッケージで使用されるデプロイメントプロセスがコンパイルされたバイナリファイルです。解凍後、node

npm はすでに bin フォルダーに存在するため、再コンパイルする必要はありません。 バイナリを使用して Node.js 環境をデプロイするには、次の操作を完了します。 Node.js インストール パッケージをダウンロードします。wget

nodejs.org/dist/v6.9.5…

##ファイルを解凍します

tar xvf node-v6.9.5-linux-x64.tar.xz

ソフト リンクを作成すると、任意のディレクトリで
node

および

npm

コマンド <pre class="brush:js;toolbar:false;">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</pre> を直接使用して、node、## を表示できます。 #npm

バージョン

node -v
npm -v
この時点で、Node.js 環境がインストールされました。ソフトウェアはデフォルトで /root/node-v6.9.5-linux-x64/ ディレクトリにインストールされます。

ソフトウェアを他のディレクトリにインストールする必要がある場合 (例: ##) #/opt/node /

)、次の手順を実行してください: <pre class="brush:js;toolbar:false;">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</pre>

3.2. NVM を使用して複数のバージョンを管理する (yum インストール)

NVM (Node Version Manager) は、Node.js のさまざまなバージョンを簡単に切り替えることができる Node .js バージョン管理ソフトウェアです。ノード開発を長期間行っている人、またはノードのバージョンを迅速に更新する必要がある人、またはノードのバージョンをすぐに切り替える必要がある人に適しています。

次の操作を完了し、NVM を使用して複数の Node.js バージョンをインストールします。 git を使用してソース コードをローカルの

~/.nvm

ディレクトリにクローンし、最新バージョンを確認します

yum install git

<pre class="brush:js;toolbar:false;">git clone https://github.com/cnpm/nvm.git ~/.nvm &amp;&amp; cd ~/.nvm &amp;&amp; git checkout `git describe --abbrev=0 --tags`</pre>NVM をアクティブにする

echo ". ~/.nvm/nvm.sh" >> /etc/profile
source /etc/profile

Node.js のすべてのバージョンをリストする<pre class="brush:js;toolbar:false;">nvm list-remote</pre>複数の Node.js バージョンをインストールする

nvm install v14.0.0 -g
nvm install v14.10.0 -g

実行

nvm ls

インストールされているノードを表示する.js バージョン、現在使用されているバージョンは v7.4.0 です。返される結果は次のとおりです。

[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)

実行

nvm use v7.4.0

Node.js バージョンを v7.4.0 に切り替えます。返された結果は以下のとおりです。

[root@iZXXXXZ .nvm]# nvm use v7.4.0
Now using node v7.4.0

Nginx デプロイメントサーバー下へのインストール;

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

Pm2 インストール

サーバー内へのインストールproject , cd でプロジェクトに移動します;

npm i pm2 -g

プロジェクトを開始します
pm2 start app // 实际执行文件在app 工程下的 index.js

pm2 一般的なコマンド:

// 安装
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

また、

をビルドすることもできます。プロジェクト process.yml

構成ファイル

apps:
  - script : app.js
    intance : 2
    watch : true
    env : 
      NODE_ENV : production
次に、

pm2 start process.yml

MongoDB インストール

プロジェクト内にインストールし、Yum ソース インストールを使用します。

システム yum ソースの構成

vi /etc/yum.repos.d/mongodb-org-4.4.repo 次の情報を追加します:

[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验证

最新の MongoDB 構成アドレス:

docs.mongodb.com/manual/tuto…

保存退出:
:wq

退出不保存
:wq!

安装MongoDB

sudo yum install -y mongodb-org

验证

rpm -qa |grep mongodb

rpm -ql mongodb-org-server

运行结果分别如下图:

Linux サーバーに Nodejs プロジェクトをデプロイする方法の詳細な説明

启动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    # 删除数据文件

实现远程连接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.

重启MongoDB

sudo service mongod restart 
复制代码

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

iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 27017 -j ACCEPT

远程连接

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

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" ] }

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

vi /etc/mongod.conf

security:
  authorization: "enabled"   # disable or enabled

3.0 重启 MongoDB

sudo service mongod restart

4.0 用户认证

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

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:端口/数据库名称?配置项

Window本地启动 MongoDB:

1.0 管理员身份打开 cmd ;

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

3.0 执行 net start mongodb

Linux サーバーに Nodejs プロジェクトをデプロイする方法の詳細な説明

其他命令

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

lsof -i:4000

Linux サーバーに Nodejs プロジェクトをデプロイする方法の詳細な説明

2、杀掉当前进程

kill 2805

在执行

npm run dev

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

du -h --max-depth=1

Linux サーバーに Nodejs プロジェクトをデプロイする方法の詳細な説明

Linux shell 脚本

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

sh run.sh // 启动服务脚本;
sh stop.sh // 启动服务脚本;
netstat -nltp  // 当前服务器端口状态;

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

以上がLinux サーバーに Nodejs プロジェクトをデプロイする方法の詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はjuejin.cnで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。