项目部署
手工部署项目
-
在idea中打包项目成 jar包
-
使用 rz 命令,上传jar包
-
使用命令 java -jar jar包名 回车启动
-
浏览器访问 http://192.168.160.128:9100/hello
注意: 192.168.160.128 是虚拟机的IP地址,9100这个端口需要开放这个端口
-
改为后台运行springboot程序,并将日志输出到日志文件
命令 描述 nohup no hang up(不挂起) 语法: nohup Command [Arg…] [&]
作用:
- Command:要执行的命令
- Arg:一些参数,可以指定输出文件
- &:让命令在后台运行
案列
nohup java -jar issueWeb.jar &>hello.log & # issueWeb这个jar包在后台运行,并且输出的内容放在hello.log这个日志文件中
- 停止spring boot程序
ps -ef | grep '.jar' # 查看进程
kill -9 22931 # 杀死进程
通过Shell脚本自动化部署项目
操作步骤:
-
在Linux中安装Git
- yum list git 列出git安装包
- yum install git 在线安装git
- ==git clone https://gitee.com/zhong-fucheng/issue-web.git== 使用git克隆代码
-
在Linux中安装Maven,上传maven安装包到Linux上面
- tar -zxvf apache-tomcat-7.0.57.tar.gz ,解压
- vim /etc/profile ,修改配置文件,加入以下内容
export MAVEN_HOME=/usr/local/apache-maven-3.5.4 export PATH=$JAVA_HOME/bin:$MAVEN_HOME/bin:$PATH
- source /etc/profile ,更新配置文件
- mvn -verison ,查看是否配置成功
- vim /etc/profile/apache-maven-3.5.4/conf/settings.xml ,修改配置文件,添加入如下内容
<localRepository>/usr/local/repo</localRepository>
-
编写Shell脚本(拉取代码、编译、打包、启动)
-
编写Linux中的脚本程序(bootStart.sh)已上传
-
为用户授权
命令 全称 描述 chmod change mode 控制用户对文件的权限命令 注意:
- Linux中权限分为三种:读®、写(w)、执行(x) 三种权限
- Linux中文件调用权限分为三级,文件所有者(Owner)、用户组(Group)、其他用户(other user)
- 只有文件所有者、或者超级用户修改文件或目录的权限
- 要执行Shell脚本,需要有对此脚本文件的执行权限,否则不能进行
-
chmod命令可以使用八进制数字来指定授权
# 权限 rwx 7 读+写+执行 rwx 6 读+写 rw- 5 读+执行 r-x 4 只读 r– 3 写+执行 -wx 2 只写 -w- 1 只执行 –x 0 无 — 举例:
- chmod 777 bootStrat.sh # 为所有用户授予读、写、执行 权限
- chmod 755 bootStrat.sh # 为文件拥有者授予读、写、执行 权限,同组用户和其他用户授予读、执行的权限
- chmod 210 bootStrat.sh # 为文件拥有者授予只写的权限,同组用户授予执行的权限,其他用户没有任何权限
注意: 3位数字分别代表不同的权限
- 第1位表示文件拥有者权限
- 第2位表示同组用户权限
- 第3位表示其他用户权限
-
-
为用户授权执行Shell脚本的权限
chmod 777 bootSrart.sh 直接给最高权限 -
执行Shell脚本
注意: shell里的地址根据自己的需求存放,gitee仓库设置开源就不用每次都输入密码了。./bootStart.sh -
设置静态ip
vim /etc/sysconfig/network-scripts/ifcfg-ens33 在文件中添加并修改如下代码
BOOTPROTO=static # 设置静态ip,默认是dhcp
IPADDR=192.168.139.100 # 设置的静态IP地址
NETMASK=255.255.255.0 # 子网掩码
GATEWAY=192.168.139.2 # 网关地址
DNS1=192.168.139.2 # DNS服务器
- 重启网络: systemctl restart network