Linux笔记 #10# 用于支持Web应用开发&部署&配置的一些自定义脚本
索引
// 留着备用
一、本地开发与测试相关脚本

个人习惯在项目的根目录下建立一个script文件夹用来存放各种自定义的脚本,
这样在根目录下不仅可以使用mvn命令和还可以很方便地执行自定义脚本(通过sh scripts/xxx.sh)。
1、startup.sh
cp target/你的应用名.war /d/apache-tomcat-9.0./webapps/test.war
sh /d/apache-tomcat-9.0./bin/startup.sh
说明:将maven项目部署到本地tomcat,并启动本地tomcat。
备注:路径需要自定义。
2、shutdown.sh
sh /d/apache-tomcat-9.0./bin/shutdown.sh
说明:关闭本地tomcat。
备注:路径需要自定义。
3、catalina-out.sh
tail -f -n /d/apache-tomcat-9.0./logs/catalina.out
说明:在终端实时观察本地tomcat的输出日志(相当于集成环境的控制台)。
备注:路径需要自定义。
4、localhost_access_log.sh
tail -f -n /d/apache-tomcat-9.0./logs/localhost_access_log.`date +%F`.txt
说明:在终端实时观察本地tomcat的访问日志(查看请求方IP、请求响应时间等)
备注:路径需要自定义。
5、上传本地文件到服务器指定目录
scp ./target/simple-shop-1.0-SNAPSHOT.war root@***.**.**.**:/root/scripts/projects/simpleshop
备注:ip、路径需要自定义
二、服务端部署与日志查看
1、nginx配置以及日志查看
tail -f -n /var/log/nginx/access.log
vim /etc/nginx/nginx.conf
tail -f -n /var/log/nginx/error.log
nginx -s reload
备注:路径需要自定义。

实际中,我将几个指令分别写成shell脚本,方便调用。
2、定制程度较高的一个脚本。。。
#!/bin/sh
# arg1: war file name, arg2: jdbc password # . shutdown all cats
sh /opt/tomcat/cat_7070/bin/shutdown.sh
sh /opt/tomcat/cat_9090/bin/shutdown.sh # . save
mv $ `date +%F`.war # . unzip
unzip -oq `date +%F`.war -d shop1 # . config
pwd=$
sed "s/^password=.*$/password=${pwd}/" shop1/WEB-INF/classes/hikari.properties -i > /dev/null # . deploy
rm -rf /opt/tomcat/cat_7070/webapps/shop1
rm -rf /opt/tomcat/cat_9090/webapps/shop1
cp -rf shop1 /opt/tomcat/cat_7070/webapps
cp -rf shop1 /opt/tomcat/cat_9090/webapps # . start all cats
sh /opt/tomcat/cat_7070/bin/startup.sh
sh /opt/tomcat/cat_9090/bin/startup.sh
说明:脚本含义见注释,对于普通tomcat项目,习惯在服务端建立一个中央仓库(中转站),进行配置的更改、服务端环境的调试。所以就有了上面的脚本。
备注:该脚本以数据库密码作为参数。
再比如,类似于:
sed "s/^const BASE_URL.*$/const BASE_URL=\"http:\/\/***.**.**.**\/shop1\/api\/v1\"/" static/shop1/resources/js/utils/customUtils.js -i
更改一些静态文件里的配置信息,避免每次上传都手动改。
当然现在很多技术可以避免这个,不过暂时还没空去学。。
Linux笔记 #10# 用于支持Web应用开发&部署&配置的一些自定义脚本的更多相关文章
- 10款让WEB前端开发人员更轻松的实用工具
这篇文章介绍10款让Web前端开发人员生活更轻松的实用工具.每个Web开发人员都有自己的工具箱,这样工作中碰到的每个问题都有一个好的解决方案供选择. 对于每一项工作,开发人员需要特定的辅助工具,所以如 ...
- App.js – 用于移动 Web App 开发的 JS 界面库
App.js 是一个轻量级的 JavaScript UI 库,用于创建像本地应用程序的移动 Web 应用而不牺牲性能和体验.它是跨平台的,特定的UI设计,配置类似原生的过渡效果.App.js 的目的是 ...
- office web apps安装部署,配置https,负载均衡(七)配置过程中遇到的问题详细解答
该篇文章,是这个系列文章的最后一篇文章,该篇文章将详细解答owa在安装过程中常见的问题. 如果您没有搭建好office web apps,您可以查看前面的一系列文章,查看具体步骤: office we ...
- office web apps安装部署,配置https,负载均衡(五)配置服务器场
前提条件:您已经完成了域控制器的配置,拥有域账号,并且已经安装了OWA启动所需要的必要软件: 具体步骤可以参考: office web apps安装部署,配置https,负载均衡(一)背景介绍 off ...
- 自学Zabbix3.10.1.5-事件通知Notifications upon events-媒介类型自定义脚本
自学Zabbix3.10.1.5-事件通知Notifications upon events-媒介类型自定义脚本
- office web apps安装部署,配置https,负载均衡(六)配置负载均衡
owa可以采用任何的负载均衡方案,我们这里采用阿里云提供的负载均衡解决方案 前提条件,你已经配置了一台域控制器,两台域服务器[即安装了owa相关软件,并将计算机隶属于域]: 如果您不清楚怎么做,那么请 ...
- office web apps安装部署,配置https,负载均衡(四)安装office web apps相关软件
前提条件: 1.一台windows server 2008R2服务器,并且已经配置了域: 服务器连接域控制器的相关文档,请查看上一篇文章: office web apps安装部署,配置https,负载 ...
- office web apps安装部署,配置https,负载均衡(三)服务器连接域控制器
前提条件:1>一台window server 2008R2 服务器 2>您已经在同一内网的另外一台服务器上安装好了域控制器文档请看我写的另外一篇文章: office web apps安装部 ...
- (数据科学学习手札123)Python+Dash快速web应用开发——部署发布篇
1 简介 这是我的系列教程Python+Dash快速web应用开发的第二十期,在上一期中我介绍了利用内网穿透的方式,将任何可以联网的电脑作为"服务器"向外临时发布你的Dash应用. ...
随机推荐
- javascript的数组之map()
map()方法创建一个新数组,其结果是该数组中的每个元素都调用一个提供的回调函数后返回的结果.新数组 // ES6 let numbers = [1, 5, 10, 15]; let doubles ...
- servlet实现简单的登录功能
1.登录页面 Login.html <%@page contentType="text/html" pageEncoding="UTF-8"%> & ...
- MySQL8.0.15的安装与配置---win10
1.下载地址 https://dev.mysql.com/downloads/installer/ 安装文件:mysql-installer-community-8.0.15.0.msi 2.安装 默 ...
- MySQL入门,了解下、
本人菜鸡一个,一份简单MySQL笔记送给大家,希望大家喜欢.(●'◡'●) Ⅰ. 数据备份与导入导出 1.1.备份基本概念介绍 1.2.mysqldump详解 1.3.mydumper浅析 1.4.M ...
- ionic3 slides轮播图手动滑动后无法自动播放问题
我们都知道Ionic3为我们提供了一套丰富易用的UI组件库,然而凡事是都有不完美之处,今天我们来看一下ionic3 slides组件在实现轮播功能时候的小问题. 先开UI小姐姐给到的3张美美哒效果图 ...
- 《HTTP - 跨域》
本文参考 HTTP访问控制(CORS) 一:什么是跨域? - 所谓跨域, 是浏览器为了保护网站安全而建立的一种保护策略,既浏览器的同源策略. - 意味着使用这些API的Web应用程序只能从加载应用程序 ...
- bootstrap 自适应和响应式布局的区别
自适应: 不管屏幕多大,都尽量不换行,而只是横向缩放. 响应式: 屏幕变小了之后,属于同一行的元素受到挤压后,行的右边元素自动换行显式: 屏幕大了后,本属于同一行的元素尽可能的排在同一行内: boo ...
- windows下复制文件报错“文件名对目标文件夹可能过长 。您可以缩短文件名并重试,或者......”
我将一个路径下文件夹复制到另一个路径下时,出现了报错,报错图片如下: 然后查资料发现: 1.文件名长度最大为255个英文字符,其中包括文件扩展名在内.一个汉字相当于两个英文字符.2.文件的全路径名长度 ...
- AIX修改密码
grid@DB01:/home/grid>su - oracleoracle's Password: 3004-303 There have been too many unsuccessful ...
- python commands包不支持windows环境与如何在windows下使用的简易方法
commands模块不支持windows环境,让我们来看看. >>> import commands >>> print commands.getoutput('d ...