阿里云部署koa2+mongodb环境,并做nginx反向代理

系统镜像: CentOS 7 64位;

本地工具:Xftp 7(连接服务器,远程操作文件),Xshell 6(ssh建立服务器会话)。

开始部署,参考部署Node.js环境(CentOS 7)

注意:/etc/profile文件不能随意修改,否则可能所有指令都找不到。

一、使用NVM(Node Version Manager)安装多版本

1、使用git将源码克隆到本地的~/.nvm目录下,并检查最新版本。

yum install git

git clone https://github.com/cnpm/nvm.git ~/.nvm && cd ~/.nvm && git checkout `git describe --abbrev=0 --tags`

2、激活NVM。

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

source /etc/profile

3、列出Node.js的所有版本。

nvm list-remote

4、安装多个Node.js版本。

nvm install v14.17.2

nvm install v12.22.2

5、运行nvm ls查看已安装的Node.js版本。

6、运行nvm use <版本号>可以切换Node.js版本。

例如,切换Node.js版本至v12.22.2。返回结果如下所示。

#nvm use v12.22.2

Now using node v12.22.2

二、安装mongodb并配置

1、本地下载社区版本的Linux版本的mongodb安装包;

2、用xftp上传到/home目录下,然后在xshell上进行解压

cd /usr/

cd /home/    // 进入home目录

tar -zxvf mongodb-linux-x86_64-amazon-4.4.6.tgz -C /usr/local/mongoDB  // 解压压缩文件到/usr/local/mongoDB目录下

rm mongodb-linux-x86_64-amazon-4.4.6.tgz    // 删除压缩包

连接数据库

/usr/local/mongodb/mongodb-linux-x86_64-amazon-4.4.6/bin/mongod --port 27017 --fork --dbpath=/usr/local/mongodb/data/ --logpath=/usr/local/mongodb/logs/mongodb.log --logappend

若启动MongoDB时报version `OPENSSL_1.0.2' not found,则重新安装openssl

yum -y install openssl

创建mongodb服务

vim /etc/systemd/system/mongodb.service

[Unit]

Description=MongoDB

After=network.target

[Service]

Type=forking

WorkingDiretory=/usr/local/mongodb/mongodb-linux-x86_64-amazon-4.4.6

Environment=MONGODB_HOME=/usr/local/mongodb/mongodb-linux-x86_64-amazon-4.4.6

ExecStart=/usr/local/mongodb/mongodb-linux-x86_64-amazon-4.4.6/bin/mongod --config=/usr/local/mongodb/etc/mongodb.conf

exexStop=/usr/local/mongodb/mongodb-linux-x86_64-amazon-4.4.6/bin/mongod --shutdown -f /usr/local/mongodb/etc/mongodb.conf

PrivateTmp=true

[Install]

WantedBy=multi-user.target

重启服务,使其生效

systemctl daemon-reload

systemctl enable mongodb

systemctl start mongodb

查看mongodb服务状态

systemctl status mongodb

停止mongodb服务

systemctl stop mongodb

reboot断开服务器连接,然后重连查看是否自动开启mongodb服务。


三、git拉取后台代码

git clone https://xxxxx

若提示输入账号密码,则先输入,成功拉取代码后,cd ~ 进入root目录,然后输入git config --global credential.helper store,那么在下次输入账号密码后会被保存起来。

设置npm镜像源

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

// 配置后可通过下面命令来验证是否成功

npm config get registry

cd进入项目,运行 npm i ,安装依赖。

运行项目,浏览器用外网ip:端口号/地址,看看是否能正常访问。ps:端口号需在服务器安全组添加新的规则。


四、linux安装nginx及配置

1、通过yum安装

1,将nginx添加到yum repro库中

# rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm

2,查看nginx信息

# yum info nginx

3,使用yum安装ngnix

# yum -y install nginx

4,启动nginx

# systemctl start nginx

2、nginx配置

# vi /etc/nginx/conf.d/default.conf

添加一个新的server,这个配置主要是将监听80端口,将来自aaa.com的请求转发到本地8081端口

server {

    listen 80;

    server_name aaa.com;

    location ~ ^/api/ {

        proxy_pass_header Server;

        proxy_set_header Host$http_host;

        proxy_set_header X-Real-IP$remote_addr;

        proxy_set_header X-Scheme$scheme;

        proxy_pass http://127.0.0.1:8081;

    }

}

配置完成保存退出,然后重启nginx,使配置生效

# systemctl reload nginx.service

你可能感兴趣的:(阿里云部署koa2+mongodb环境,并做nginx反向代理)