当前位置:   article > 正文

服务器node项目部署 前端项目部署 Jenkin自动部署 本地navicat下载激活以及常用的服务器命令_node 服务端部署工具

node 服务端部署工具

1.服务器node项目部署

  1. 安全组设置
  2. mysql集成
  3. 本地navicat下载激活
  4. node下载
  5. 上传node项目代码
  6. pm2启动node项目

2.前端项目部署

  1. 上传前端项目代码
  2. nginx下载配置

3.Jenkin自动部署

4.常用的服务器命令

6.注意

1.服务器node项目部署

1)安全组设置

在阿里云里叫安全组,在腾讯云叫防火墙,主要是用来管理服务器端口号,设置哪些端口号,哪些端口号可以被外部访问等,一般mysql设置3306,ssh是22,nginx访问是80,Jenkins是8080 设置好后我们就可以进行云服务器连接

2)服务器上mysql的安装

1.需配置安全组 mysql配置3306端口

2.安装mysql:

centos7:

  1. #下载mysql
  2. yum -y install mysql-server
  3. #启动mysql
  4. systemctl start mysqld
  5. #获取MySQL临时密码
  6. grep 'temporary password' /var/log/mysqld.log
  7. #使用临时密码先登录
  8. mysql -uroot -p
  9. #把MySQL的密码校验强度改为低风险 这样就可以给mysql设置简单的密码
  10. set global validate_password_policy=LOW;
  11. #修改MySQL的密码长度 就可以设置五位数的密码了
  12. set global validate_password_length=5;
  13. #修改MySQL密码
  14. ALTER USER 'root'@'localhost' IDENTIFIED BY 'admin';
  15. #登录MySQL
  16. mysql -uroot -padmin
  17. #切换到mysql数据
  18. use mysql;
  19. # 查看user表 会看见发现root用户只允许localhost主机登录登录 这个时候如果我们的电脑连接服务器mysql是不会连接成功的
  20. select Host,User from user;
  21. #修改为允许任何地址访问
  22. update user set Host='%' where User='root';
  23. #刷新权限
  24. flush privileges;

centos8:

注意上面第二个命令少了个d 应该是systemctl status mysqld

这里会问你密码强度设置,密码填写,是否取消一个谁都可以访问的匿名用户 是否只有本地可以访问 是否移除test  匿名用户和test一般移除 一般还设置为只有本地可以访问

接下来可以登录数据库了 记得设3306的安全组或防火墙 并且设置为都可访问 如果navicat无法登录服务器mysql 可以进行以下操作

  1. #登录MySQL
  2. mysql -uroot -p密码
  3. #切换到mysql数据
  4. use mysql;
  5. # 查看user表 会看见发现root用户只允许localhost主机登录登录 这个时候如果我们的电脑连接服务器mysql是不会连接成功的
  6. select Host,User from user;
  7. #修改为允许任何地址访问
  8. update user set Host='%' where User='root';
  9. #刷新权限
  10. flush privileges;
 3)navicat的下载激活

Navicat for MySQL 15注册激活详细教程_Mysql_脚本之家

 4)安装nodejs:对于centos7的版本我们用yum进行下载 

5)上传node代码:vscode的Remote - SSH插件  或FileZilla
6)pm2启动node程序

2.前端项目部署

1)上传代码
2)nginx下载
(1)安装nginx
  1. dnf install nginx 下载
  2. systemctl start nginx 启动
  3. systemctl status nginx 查看状态
  4. systemctl enable nginx 随系统启动
(2) 配置nginx

nginx配置文件所在目录/etc/nginx/nginx.conf

我们这里主要配置nginx的用户和默认访问目录:

配置用户:把nginx改为root 否则访问会403 没有权限

配置访问目录:即访问规则

3.Jenkin自动部署

1)连接Jenkins仓库

因为Jenkins本身是没有在dnf的软件仓库包中的,所以我们需要连接Jenkins仓库:

wget是Linux中下载文件的一个工具,-O表示输出到某个文件夹并且命名为什么文件;

  1. wget –O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat-stable/jenkins.repo
  2. #ls 查看有没有jenkins.repo文件
  3. ls
  4. #如果有的话说明放在了root里面了 这个时候要移动该文件  
  5. mv jenkins.repo /etc/yum.repos.d/jenkins.repo
  6. #cd到该文件夹
  7. cd /etc/yum.repos.d
  8. #查看是否有该文件 有就说明成功了
  9. ls

rpm:全称为**The RPM Package Manage**,是Linux下一个软件包管理器;

  1. #这里的rpm --import后面的路径里面有时候是redhat 有时候是redhat-stable,应该是要和jenkins.repo的文件内容做统一的 如果是stable则jenkins.repo里面的baseurl后面也是stable 可以编辑修改文件/etc/yum.repos.d/jenkins.repo
  2. cd /etc/yum.repos.d/jenkins.repo
  3. #可以通过vim编辑
  4. vi jenkins.repo
  5. #i进行编辑 :wq保存退出
  6. [jenkins]
  7. name=Jenkins-stable
  8. baseurl=http://pkg.jenkins.io/redhat
  9. gpgcheck=1
  10. # 导入GPG密钥以确保您的软件合法 密钥导入的时候一个不行就尝试下一个 下一个还是不行就再下一个
  11. rpm --import https://pkg.jenkins.io/redhat/jenkins.io.key
  12. # 或者
  13. rpm --import http://pkg.jenkins-ci.org/redhat/jenkins-ci.org.key
  14. # 又或者是
  15. sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key

2)安装Jenkins

dnf install jenkins # --nogpgcheck(可以不加 如果不加报错就加上)

3)启动

  1. #启动Jenkins的服务:
  2. #当启动的时候会报错 可以用journalctl -xe和systemctl status jenkins.service jenkins -version查看报错原因
  3. systemctl start jenkins
  4. systemctl status jenkins
  5. systemctl enable jenkins

3)修改权限

我们后面会访问centos中的某些文件夹,默认Jenkins使用的用户是 `jenkins`,可能会没有访问权限(比如上传文件到服务器的时候会报错),所以我们需要修改一下它的用户:

  1. #修改文件的路径:`/etc/sysconfig/jenkins` User和Group改为root 如果没有该文件就将Jenkins添加到root组中
  2. sudo usermod -a -G root jenkins
  3. # 如果还不行也可以给Jenkins目录权限
  4. chown -R root /var/cache/jenkins
  5. chown -R root /var/cache/lib
  6. #如果还不行 就操作目标文件夹
  7. #方法一:更改文件权限 将为所有用户提供对/root/main/目录的读、写和执行权限。
  8. sudo chmod -R 777 /root/main/
  9. #方法二:更改文件夹权限 把文件夹的所有者更改为jenkins用户和所属组。
  10. sudo chown -R jenkins:jenkins /root/main/
  11. #方法三:更改文件所有者 把文件的所有者更改为jenkins用户和所属组。
  12. sudo chown jenkins:jenkins /root/main/App.vue
  13. #最后不要忘记重启
  14. systemctl restart jenkins

4)jenkins配置

服务器下载git 拉代码仓库代码   jenkins下载node 对代码仓库进行打包和依赖下载操作

dnf install git

5)新建任务

构建触发器

  1. * 定时字符串从左往右分别是:分 时 日 月 周
  2. #每半小时构建一次OR每半小时检查一次远程代码分支,有更新则构建
  3. H/30 * * * *
  4. #每两小时构建一次OR每两小时检查一次远程代码分支,有更新则构建
  5. H H/2 * * *
  6. #每天凌晨两点定时构建
  7. H 2 * * *
  8. #每月15号执行构建
  9. H H 15 * *
  10. #工作日,上午9点整执行
  11. H 9 * * 1-5
  12. #每周1,3,5,从8:30开始,截止19:30,每4小时30分构建一次
  13. H/30 8-20/4 * * 1,3,5

构建执行的任务:

  1. * 查看Node的版本等是否有问题;
  2. * 执行 `npm install` 安装项目的依赖;
  3. * 移除原来mall_cms文件的所有内容;
  4. * 将打包的dist文件夹内容移动到mall_cms文件夹;
  5. pwd
  6. node -v
  7. npm -v
  8. npm install
  9. npm run build
  10. pwd
  11. echo '构建成功'
  12. ls
  13. # 删除/root/mall_cms文件夹里所有的内容
  14. rm -rf /root/mall_cms/*
  15. cp -rf ./dist/* /root/mall_cms/

5.常见的服务器命令

切换到根目录 cd /

切换到该目录下的 w文件夹 cd w

查看该目录下有什么文件夹 ls

编辑w文件

重启 systemctl restart sshd

编辑文件信息 vi 文件名 (如果当前登录账号没有权限,可以在前面加sudo)

开始编辑 i

编辑完成不需要保存直接退出 点击Esc 退出 再加Shift+: 输入q! 退出

编辑完成需要保存 点击Esc 退出 再加Shift+: 输入wq

查看下载的包 yum list installed

卸载yum -y remove vsftpd

查看安装的nodejs的版本 node --version

创建文件和文件夹 mkdir /root/mall_cms cd /root/mall_cms touch index.html

 6.注意:

1.在设置安全组的时候,对于安全组3389是window serve 所以这个接口可以不要暴露

2.购买服务器时,对于阿里云的流量付费的时候账户里面需要有大于100块

3.Ssh 服务器地址 登录过程中出现Permission denied (publickey,gssapi-keyex,gssapi-with-mic) 问题以及如何解决:/etc/ssh/sshd_config文件修改 PasswordAuthentication yes  PermitRootLogin yes 修改完后 systemctl restart sshd

4.如果用n切换node版本后node版本没有变化

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/661314
推荐阅读
相关标签
  

闽ICP备14008679号