目录

云服务器配置记录

{{ }}

连接服务器

  1. 首先,先购买云服务器,并配置好密码,记住公网ip,如:139.196.49.176
  2. 下载XShell,用于登录远程服务器,在xshell中新建连接:

https://cdn.nlark.com/yuque/0/2021/png/714353/1631896551145-9829647e-e08c-4d9c-a196-5a5a3b867536.png

  1. 输入命令:ssh root@139.196.49.176,再输入密码后即可连接至远程服务器
  2. 修改主机名:hostnamectl --static set-hostname codingbylch

https://cdn.nlark.com/yuque/0/2021/png/714353/1631896668508-f4005fe4-ca3a-443d-8486-39d211dcf26c.png https://cdn.nlark.com/yuque/0/2021/png/714353/1631896684191-ca5d1540-0d3f-47c7-881d-42dd2e08f3f1.png

安装NodeJS、MySQL

  1. 安装软件使用到的工具是:dnf,centos8默认带有,检查是否可用:dnf --help
# 搜索软件包
dnf search nodejs
	
# 查看软件包信息: nodejs的版本是10.21.0
dnf info nodejs
	
# 安装nodejs
dnf install nodejs
  1. 此时安装的nodejs版本较低,可以使用工具n,这是用来管理nodejs版本的
    1. 安装n:npm install n -g
    2. 通过n安装最新的lts和current:n install ltsn install latest
    3. 通过n切换版本:n
  2. 如果发现切换之后终端没有反应,可以进⾏重启:ssh service sshd restart
  3. 使用dnf安装mysql,安装MySQL,这⾥加-y的意思是依赖的内容也安装:dnf install mysql-server -y
  4. 启动mysql-server:
    1. 开启MySQL后台服务:systemctl start mysqld
    2. 查看MySQL服务:active (running)表示启动成功:systemctl status mysqld
    3. 随着系统⼀起启动:systemctl enable mysqld

配置mysql

  1. 配置MySQL账号和密码:mysql_secure_installation,选2,一路选y

使用本地的Navicat连接远程的数据库步骤:

  1. 首先服务器中配置mysql
    1. 连接数据库:mysql -u root -p,输入密码
    2. 使用mysql数据库:use mysql;
    3. 查看user表:select host, user from user;
    4. 修改权限:update user set host = '%' where user = 'root';

https://cdn.nlark.com/yuque/0/2021/png/714353/1631898378318-5e05a576-ad7a-4535-ab30-f4eb167bae75.png https://cdn.nlark.com/yuque/0/2021/png/714353/1631898458273-3a2c3a7f-45ed-4164-8279-3e63f7b25bf9.png

  1. 配置云服务器的安全组,添加开放3306端口,利用快速添加进行操作
  2. Navicat新建mysql连接:

https://cdn.nlark.com/yuque/0/2021/png/714353/1631898767022-12d2e484-bd33-44da-840c-3ab93c98798f.png

数据库迁移

本地需要迁移的数据库 - 右键,转储SQL文件,结构和数据 - 导出到某一位置; 远程SQL - 新建数据库 - 该数据库右键,运行SQL文件,选择之前导出的文件进行导入,即完成迁移。

部署Node项目

大概有3种方式:

  • 第一种:手动将代码拷贝到远程服务器(利用工具,用的很少,略)
  • 第二种:代码托管到GitHub,其中的.env忽略上传,其中存放的是databse的一些常量

这里先讲一下第二种:

  1. 上传至Git仓库后,仓库地址如:https://github.com/codingbylch/node_coderhub.git
  2. 在远程服务器中安装git:dnf install git
  3. 在远程服务器中新建一个文件夹,名如coderlch:cd ..mkdir coderlchcd coderlch
  4. 克隆远程仓库:git clone https://github.com/codingbylch/node_coderhub.git
  5. 在本地VSCode打开远程服务器的文件夹,实现像在本地一样操作远程文件夹:
    1. VSCode安装:Remote - SSH
    2. 点击Add New,添加:ssh root@139.196.49.176
    3. 输入密码之后,选择打开文件夹,然后选择coderlch,就会进入远程文件夹
    4. 安装项目:npm install
    5. 编辑.env文件(注意数据库密码别错咯)
    6. 运行项目:node ./src/main.js
  6. 将在.env文件中配置的端口加入到安全组中,这样外部才能访问接口
  7. 现在试着访问:http://139.196.49.176:8005/moment/7
  8. 为防止关闭终端就结束项目,需要安装pm2,帮助我们后台运行该项目:npm install pm2 -g
    1. 常用的一些命令:

命名进程

pm2 start app.js --name my-api

显示所有进程状态

pm2 list

停⽌指定的进程

pm2 stop 0

停⽌所有进程

pm2 stop all

重启所有进程

pm2 restart all

重启指定的进程

pm2 restart 0

杀死指定的进程

pm2 delete 0

杀死全部进程

pm2 delete all
#后台运⾏pm2,启动4个app.js,实现负载均衡 pm2 start app.js -i 4 (一般根据服务器cpu核数决定)

  1. 输入命令:pm2 start ./src/main.js --name my-api

jenkins自动化部署

效果:远程服务器能够自动拉取git仓库,并自动执行一系列命令。

先略。