天天看点

linux 中 Apache-node.js-mongoDB 运行环境搭建:21-06-10前后端分离项目部署环境配置

前后端分离项目部署环境配置

  1. 准备工作

    安装 OpenSSH 工具。

  2. 连接服务器
    1. cmd 中 键入 ssh [email protected] 回车,输入密码,进入root 家目录

Apache 安装启动 与 代理转发

安装启动

  1. yum -y install httpd

    安装 Apache
  2. 配置文件位置

    /etc/httpd/conf/httpd.conf

- 配置文件默认网站根目录为 `/var/www`
- 若要更改网站根目录将 `/var/www` 替换为目标根目录就可以了
           
  1. 启动服务

    systemctl start httpd.service

  2. 重启服务

    systemctl restart httpd.service

  3. 重载配置文件

    systemctl reload httpd.service

代理转发 (项目中有跨域请求)

vim /etc/httpd/conf/httpd.conf

打开配置文件,在最底端添加如下:

```
        ProxyRequests Off
        ProxyPass /goods http://127.0.0.1:3000/goods
        ProxyPassReverse /goods http://127.0.0.1:3000/goods

        ProxyPass /users http://127.0.0.1:3000/users
        ProxyPassReverse /users http://127.0.0.1:3000/users

        # 80为apache的监听端口
        <proxy  http://127.0.0.1:80>
            AllowOverride None
            Order Deny,Allow
            Allow from all
        </proxy>
    ```
           

mongodb 安装启动

  1. 新建文件夹
    ```
          cd /usr/local
          mkdir mongodb
    
     ```
               
  2. 下载安装包
    1. (方法 1)从

      https://www.mongodb.com/

      进行下载,安装包选择 例如:我是centOS 的服务器系统,我选的 tgz 类型的压缩包,不是 shell 版
    2. 如果是下载到客户端,则需要自行上传到服务器,

      scp /目录/目标文件 [email protected]:/usr/local/mongodb

    3. (方法 2)也可以 copylink, 然后在服务器指定目录

      /usr/local/mongodb

      ,通过

      wget -c url

      进行下载, -c 表示断点续传
  3. 解压安装包
    ```
         cd /usr/local/mongodb
         tar -zxvf mongodb-linux-x86-xxxx.tgz
         mkdir data
         mkdir logs
         mkdir etc
         cd ./logs
         touch mongodb.log
         cd ..
         cd etc
         touch mongodb.conf
    
       ```
               
  4. 为 mongodib.conf 文件添加配置
    ```
       vim /usr/local/mongodb/etc/mongodb.conf
       # 按 i 进行插入
       # 数据库路径
       dbpath=/usr/local/mongodb/data
       # 日志输出路径
       logpath=/usr/local/mongodb/logs/mongodb.log
       # 错误日志采用追加模式
       logappend=true
       # 启用日志文件,默认启用
       journal=true
       # true 为过滤无用日志信息,若调试设置为 false
       quiet=true
       # 端口 27017
       port=27017
       # 允许远程访问
       bind_ip=0.0.0.0
       # 子进程开启
       fork=true
       # 连接认证开启(当前不开启,测试完成后开启)
       # auth-true
    
     ```
               
  5. 为 mongodb 服务添加环境变量
    1. vim /etc/profile

      打开后拉到最后一行,添加:
    2. export PATH=$PATH:/usr/local/mongodb/mongodb-linux-x86-xxxx/bin

    3. 激活配置文件:

      source /etc/profile

    4. 创建软链接
      • cd /usr/local/mongodb/mongodb-linux-x86-xxxx/bin

        切到bin目录
      • ln -s mongod /usr/local/mongodb

  6. 启动 mongodb 服务
    1. cd /usr/local/mongodb/mongodb-linux-x86-xxxx/bin

      安装目录启动:
    2. ./mongod -f /usr/local/mongodb/etc/mongodb.conf

    3. 如果 启动成功会提示: child process started sucessfully,parent exiting
    4. 查看进程

      netstat -lanp | grep "27017"

    5. 操作数据库,配置环境变量后,任意目录 输入

      mongo

    6. show dbs

      查看数据库,若能查看到则成功
  7. 添加用户并设置密码,提高安全性
    • 介绍:mongodb 副本集默认会创建 local、admin 数据库,local数据库主要存储副本集的元数据,admin数据库则主要存储 mongodb 的用户角色信息
    • use admin

      切换数据库
    • db.createUser({user: "root", pwd: "12345", roles: [{role: "root", db: "admin"}]})

      进行用户创建授权
    • db.shutdownServer()

      创建成功后,关闭 mongo 服务
  8. 开启认证
    • auth=true

      将注释去掉
  9. 测试认证
    1. 如果在 /usr/local/mongodb 目录创建过软连接,则在此目录下可以通过以下
      • mongod -f /usr/local/mongodb/etc/mongodb.conf

        进行启动
      • 如果没有创建软链接,则通过之前的方式启动
    2. 启动后
    • 任意目录 输入

      mongo

      启动服务
    • 输入

      show dbs

      若什么都没有, 则认证功能生效
    • 输入

      use admin

      回车
    • 输入

      db.auth('root')

      回车
    • 输入密码,回车,返回 1 则表示登录成功
    • show dbs

      有数据则成功
  10. 通过 客户端可视化工具连接, 使用 MongoDB Compass 或 Navicat 可视化工具
    • 首先确定服务器防火墙开启 27017 端口能被访问, 云服务器安全组中添加一个,27017 的端口规则
    • 然后就是正常的 ip 密码输入后连接登录就可以了

node.js 安装

  1. 新建目录 node.js 上传安装包
    • wget 获取
    • scp 上传
  2. 解压
    • node.js 目录下,使用

      xz -d node-v14.16.1-linux-x64.tar.xz

    • tar -xvf node-v14.16.1-linux-x64.tar

      再次进行解压
  3. 添加环境变量
    • vim /etc/profile

    • export PATH=$PATH:/usr/local/node.js/node-vxxx-linux-x64/bin

      最末行添加
  4. 测试
    • node -v
    • npm -v

pm2 管理 node.js 进程

  • 安装

    npm i -g pm2

  • 测试

    pm2 -v

  • 启动

    pm2 start www

  • 重新启动

    pm2 restart id

  • 停止服务

    pm2 stop id

继续阅读