拉取代码是指把本地的代码提交到服务器上去,在服务器上拉取

    这个代码,然后在服务器上使用pm2来启动这个nodejs的项目。然后就可以访问了。

    那要拉取代码,首先要把我们本地代码传到git平台上去,这里可以选择国内的码云gitee,暂时先私有,其他东西如readme不选,因为在本地代码中已经写了。

    复制一下生成的SSH地址git@gitee.com:miqilin21/moba.git,gitee里也要绑定本地的ssh-key,还有服务器里的Key尽量不要加到自己的ssh-key里,因为服务器里的Key权限比较大,它可以操作所有项目,应该加到部署公钥里面,在项目里面的设置里,
    image.png

    把服务器中的公钥:cat ~/.ssh/id_rsa.pub 到部署公钥中。

    添加部署公钥后,在服务器中就可以去拉取git里代码了,复制这个git仓库ssh的地址,

    先到服务器中:cd /

    然后:mkdir /data 在根目录下建一个文件夹,然后cd /data,然后就可以git clone刚刚复制的地址了,出现一个选择选yes就好。

    clone好后,因为node_module是被忽略的,所以cd moba-mobile-site/moba-node里安装依赖:npm i

    安装好依赖后输入:node index.js

    但是这种启动方式,它会导致我们终端被占用,而且一旦ctrl + c 关闭的话,它就停了。所以我们要用pm2,用 npm i -g pm2 安装先,pm2可以在后台运行我们的nodejs。所以说在服务器端,我们一般都是用pm2来部署这个文件的,本地开发用nodemon,服务器上部署用pm2。

    安装好后:pm2 start index.js,这样就启动起来了,而且也没有占用我们的终端。

    用pm2 list 来看我们现在有多少个进程,也可以用 pm2 logs index ,来看它log的是什么。

    ctrl + c 一下,终止。

    测试的话用curl:curl http://localhost:3000,
    image.png

    curl http://localhost:3000/admin/ :

    就返回后台项目的html了。

    到这里的话就证明nodejs的服务端已经启动起来了。

    接下来就是怎么让这个网站能被外网访问,也就是把http://localhost:3000 这个端口呢,绑定到nginx上去,让公网可以访问。