在Linux服务器上部署的时候,一般都要有哪些脚本,这些脚本该怎么编写?

1.背景介绍

当我们在本地写好一个项目测试完毕后 我们一般都要把它上传到服务器上去

这里我们需要的操作都有什么呢

最低级的就是从本地打好war包上传服务器

不过在实际上我们都会使用一些版本管理工具像svn

目的是多人合作开发项目

任务三里面我们对此有一个详尽的使用

今天我们就在这里来谈一下如何从svn上自动下载部署到服务器上

2.知识剖析

我们先谈一下整体思路 要在svn上下载相关项目 然后服务器上打包

然后把war包放在容器内 这里我用的resin 最后重启resin

这些操作命令相信各位大佬都很熟悉 今天我们就用一个脚本实现一个命令解决

首先注意一下脚本文件的基础

程序必须以下面的行开始

#!/bin/sh

符号#!用来告诉系统它后面的参数是用来执行该文件的程序。

当编辑好脚本时,如果要执行该脚本,还必须使其可执行。

要使脚本可执行:编译 chmod +x 这样才能用./ 来运行

3.常见问题

 3.1.执行权限问题

 3.2.echo打印问题

3. 3.打印变量问题

4.解决方案

4.1,使用sh 执行文件

4.2,echo 后面要有空格

4.3.用{}括起来

5.编码实战 

直接贴代码把 更多更具体的可以看一下下文的视频

cat deploy.sh

#!/bin/sh

echo 停止resin服务

sh /opt/stop.sh

echo 停止svn服务

cd /

killall svnserve

echo 删除home下deploy

cd /home

rm -rf deploy/*

echo 从svn下载项目

cd deploy

svn co svn://120.92.4.210/student/task/trunk/baixiaoran/deploy

echo 项目打包

cd deploy

mvn install

echo 将war包复制到webapps下

cd target

cp *.war /home/resin-pro-4.0.53/webapps

echo 启动resin

sh /opt/start.sh

6.扩展思考

这样只能从固定的文件夹下自动下载部署  如何自行决定从哪个文件夹下自动部署

设置变量 使用read命令 读取来自键盘输入的变量 

ppt        https://ptteng.github.io/PPT/PPT-java/java-task2-When you deploy on a Linux server, what scripts do you usually have How do you write those scripts.html#/

我录得小视频链接:https://v.qq.com/x/page/s0545dnfxbz.html  可以看我的实战操作

推荐的免费学习网站:http://www.jnshu.com/login/1/13397829

你可能感兴趣的:(在Linux服务器上部署的时候,一般都要有哪些脚本,这些脚本该怎么编写?)