-
Linux 环境下部署 jar 项目
2019-02-13 19:37:53一、使用 maven 打包项目为 xxx.jar 二、查看 Linux 系统中是否安装了 JDK 如果未安装,请参考 Linux 下安装 JDK 链接:...1、选好你要部署到的文件路径 ,假设项目名是share,这里我选的是/home/sh...一、使用 maven 打包项目为 xxx.jar
二、查看 Linux 系统中是否安装了 JDK
如果未安装,请参考 Linux 下安装 JDK 链接:https://blog.csdn.net/qq_40087415/article/details/79407061
三、配置运行 xxx.jar 脚本
1、选好你要部署到的文件路径 ,假设项目名是share,这里我选的是/home/share,然后建立几个文件夹和一个运行脚本。
cd /home mkdir share cd /share mkdir app mkdir config mkdir heapdump mkdir log touch restart.sh
目录结构是
|—–home
|———share
|————–app (存放share.jar)
|————–config (jar项目的配置文件{application.yml等},jar项目运行的时候,优先使用这里的配置文件,若没有才使用jar包里的配置文件)
|————–heapdump (保存Heap Dump信息)
|————–log (相关log)
|————–restart.sh (运行脚本)2、编写
restart.sh
脚本的内容#!/bin/bash base_home='/home/share' app_name='share' pid=`ps -ef|grep ${app_name}|grep -v grep|grep -v restart|awk '{print$2}'` if [ -n "${pid}" ] ;then kill -9 ${pid} sleep 10 fi gclog_file=$base_home/log/gc.log dump_dir=$base_home/heapdump errorlogs_dir=$base_home/log java -Xmx1g -Xms1g -XX:+UseParallelGC -XX:+UseParallelOldGC -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+UseGCLogFileRotation -XX:GCLogFileSize=128M -XX:NumberOfGCLogFiles=1 -Xloggc:${gclog_file} -XX:HeapDumpPath=${dump_dir} -jar $base_home/app/${app_name}.jar --spring.config.location=$base_home/config/application.yml >> $base_home/log/${app_name}_$(date +'%Y%m%d').log &
3、解释脚本内容
base_home='/home/share' : share项目的根路径
app_name='share' : 项目名称(即/home/share/app/share.jar的文件名)
pid=`ps -ef|grep ${app_name}|grep -v grep|grep -v restart|awk '{print$2}'` : 找到ABC项目当前运行的进程号(若有)
if [ -n "${pid}" ] ;then kill -9 ${pid} sleep 10 fi : 若share项目已运行,根据上一步骤获得的pid可以杀死当前运行ABC项目的进程
最后的运行命令有点复杂,让我们一个个解读
这么长的命令,其实运行起来的命令是很简单 java -jar $base_home/app/${app_name}.jar &,这样即可成功运行起来,& 是让此命令后台运行 ,这里这么复杂是进行了jvm优化。
-Xmx1g : 设置JVM最大可用内存为1g。
-Xms1g : 设置JVM促使内存为1g。此值可以设置与-Xmx相同,以避免每次垃圾回收完成后JVM重新分配内存。
-XX:+UseParallelGC : 选择垃圾收集器为并行收集器。
-XX:+UseParallelOldGC : 配置年老代垃圾收集方式为并行收集。
-XX:+PrintGCDetails : 可以详细了解GC中的变化。
-XX:+PrintGCTimeStamps : 配合上面的PrintGCDetails,可以了解这些垃圾收集发生的时间,自JVM启动以后以秒计量。
-XX:+UseGCLogFileRotation : 启用GC日志文件的自动转储。
-XX:GCLogFileSize=128M : 控制GC日志文件的大小。
-XX:NumberOfGCLogFiles=1 : GC日志文件的循环数目。
-Xloggc:${gclog_file} : 把gc日志信息记录到文件gclog_file=$base_home/log/gc.log。
-XX:HeapDumpPath=${dump_dir} : 将Heap Dump信息保存到dump_dir=$base_home/heapdump。
--spring.config.location=$base_home/config/application.yml : 运行的配置文件,若没有config/application.yml,则用jar里的配置文件。
>> $base_home/log/${app_name}_$(date +'%Y%m%d').log 将运行的log信息保存到$base_home/log 文件夹下,log文件会以日期命名${app_name}_$(date +'%Y%m%d').log 最终的名字可能是share_20190213.log 。
3.使用
经过对 restart.sh 脚本的编写,然后执行 chmod +x restart.sh 这个脚本就可以正常运行了
sh restart.sh(要确保 share.jar 包已经上传到 app/ 文件夹下) -
Linux下的环境部署和项目发布
2018-11-14 09:22:20①将下载好的jdk压缩包放入linux远程程序中,opt目录下 ②在linux上,opt目录下创建moduls文件夹,用来存放解压的jdk ③解压jdk 输入解压命令 tar -zxvf jdk-8u91-linux-x64.tar.gz -c /opt/moduls 查看解压...一 安装jdk
①将下载好的jdk压缩包放入linux远程程序中,opt目录下
②在linux上,opt目录下创建moduls文件夹,用来存放解压的jdk
③解压jdk
输入解压命令
tar -zxvf jdk-8u91-linux-x64.tar.gz -c /opt/moduls
查看解压文件 cd /opt/moduls
输入指令 ll
④配置环境变量
输入指令 vi /etc/profile进入以下界面
在该文件最后追加一下配置
点击Esc-》 shift+:-》wq保存退出
⑤使配置立即生效
输入命令 source /etc/profile
查看jdk版本信息 java -version
环境变量到此配置完成
二 安装mysql连接数据库
①写在linux系统自带的mysql
rpm -e --nodeps mysql-libs-5.1.66-2.el6_3.x86_64
检查是否删除:rpm -qa | grep mysql
②通过yum 安装mysql
yum install -y mysql-server
成功的话,可以看到“Complete!”
默认安装的是5.1.73
②启动mysql服务
service mysqld start
如果是5.1的版本,mysql的服务名称:mysqld
版本>5.5 ,mysql的服务名称:mysql
③设置root用户密码
/usr/bin/mysqladmin -u root password '1234'
密码最好与数据库的密码一致
验证:mysql -u root -p
显示数据库 show database
使用数据库: use mysql
显示数据表
查询数据库: select host,user,password from user
④让mysql,随着系统的启动而启动
查看mysql状态:chkconfig mysqld --list
数据库的关闭开启
⑤在mysql配置对应的权限(记住是在mysql中)
a:授权
grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option
b:查询
select host,user,password from user;
经验告诉你,你保留一条:
c:刷新权限(必须执行)
flush privileges
到此linux上mysql数据库安装成功,但是还没有结束
在本地主机mysql程序上创建数据库,
如果以上配置没有出错的情况下是能连接上数据库的
数据库连接成功后,将你本地项目需要连接的数据库复制到,linux连接的的数据里面一份,为后面的项目的访问坐下准备。
三 安装tomcat
①下载tomcat
地址:https://tomcat.apache.org/
下载的版本
将下载好的tomcat压缩包放入linux远程上传文件的程序软件上
②解压
注意:/opt
tar -zxvf jdk-8u91-linux-x64.tar.gz -C ./moduls/
③启动tomcat
进入tomcat bin目录下
启动tomcat sh start.sh或者./startup.sh
查看tomcat进程是否启动成功
关闭tomcat
重启tomcat(先关闭tomcat+在启动tomcat)
到此tomcat安装成功
四 项目部署
将所需要的发布的项目打成war包,如果是java工程打成jar包,放入远程程序解压的tomcat webapp下
jdk mysql tomcat都安装好了,这时候就可以启动tomcat进行访问了
启动tomcat
在浏览器输入
ip地址名:8080查看是否访问成功
访问80能成功就可以访问你的项目了
到此,我们的一些软件的安装,以及项目在linux部署到访问就完成了
---------------------
作者:double_lifly
来源:CSDN
原文:https://blog.csdn.net/qq_41934990/article/details/81449923
版权声明:本文为博主原创文章,转载请附上博文链接! -
Linux 环境部署 jar项目
2017-12-06 11:54:18Linux 环境部署 jar项目在很多小公司,很多时候一个后台程序员还要承担一部分运维的角色,难免避免不了自己动手上某云上部署后台项目,war包暂且这里就不介绍了,这次主要记录下部署用maven打包成jar包的项目。Linux...Linux 环境部署 jar项目
在很多小公司,很多时候一个后台程序员还要承担一部分运维的角色,难免避免不了自己动手上某云上部署后台项目,war包暂且这里就不介绍了,这次主要记录下部署用maven打包成jar包的项目。
配置java环境
1.查看操作的系统位数
uname -ar
出现是x86_64说明是 64位的
也可以用
getconf LONG_BIT
直接输出当前系统位数
2.下载jdk
进入orcale官网选择需要下载的版本jdk1.8传送门
这里我选择的是
8u144-b01
的rpm包,按照往常linux下的下载命令,我们会使用wget
命令进行下载再解压安装wget http://download.oracle.com/otn-pub/java/jdk/8u144-b01/090f390dda5b47b9b721c7dfaa008135/jdk-8u144-linux-x64.rpm
天啦噜!怎么下载的是一个 5.2k的html?说好的jdk呢?
我们再仔细看jdk下载页面,会发现有一个Accept License Agreement
需要勾选才能下载 。经过翻阅资料(百度),最终用下面这个命令成功下载了jdk。wget --no-check-certificate --no-cookie --header "Cookie: oraclelicense=accept-securebackup-cookie;" http://download.oracle.com/otn-pub/java/jdk/8u144-b01/090f390dda5b47b9b721c7dfaa008135/jdk-8u144-linux-x64.rpm
然后执行
rpm -ivh jdk-8u144-linux-x64.rpm
安装jdk
如果下载的是tar.gz包,直接用命令tar -zxvf jdk-8u92-linux-x64.tar.gz
解压即可3.配置环境变量
执行
vi /etc/profile
,在文件末尾添加export JAVA_HOME=/home/roo/jdk1.8.0_92 (这里修改为自己的jak安装路径) export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
然后执行
java -version
看看是否配置成功配置运行脚本
1.配置脚本
选好你要部署到的文件路径 ,假设项目名是ABC,这里我选的是
/home/ABC/
,然后建立几个文件夹和一个运行脚本。cd /home/ABC mkdir app mkdir config mkdir heapdump mkdir log touch restart.sh
目录结构是
|—–home
|———ABC
|————–app (存放ABC.jar)
|————–config (jar项目的配置文件{application.yml等},jar项目运行的时候,优先使用这里的配置文件,若没有才使用jar包里的配置文件)
|————–heapdump (保存Heap Dump信息)
|————–log (相关log)
|————–restart.sh (运行脚本)然后进行编写
restart.sh
脚本的内容#!/bin/bash base_home='/home/ABC' app_name='ABC' pid=`ps -ef|grep ${app_name}|grep -v grep|grep -v restart|awk '{print$2}'` if [ -n "${pid}" ] ;then kill -9 ${pid} sleep 10 fi gclog_file=$base_home/log/gc.log dump_dir=$base_home/heapdump errorlogs_dir=$base_home/log java -Xmx1g -Xms1g -XX:+UseParallelGC -XX:+UseParallelOldGC -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+UseGCLogFileRotation -XX:GCLogFileSize=128M -XX:NumberOfGCLogFiles=1 -Xloggc:${gclog_file} -XX:HeapDumpPath=${dump_dir} -jar $base_home/app/${app_name}.jar --spring.config.location=$base_home/config/application.yml >> $base_home/log/${app_name}_$(date +'%Y%m%d').log &
2.解释脚本内容
base_home='/home/ABC'
: ABC项目的根路径app_name='ABC'
: 项目名称(即/home/ABC/app/ABC.jar
的文件名)pid=`ps -ef|grep ${app_name}|grep -v grep|grep -v restart|awk '{print$2}'`
: 找到ABC项目当前运行的进程号(若有)
if [ -n "${pid}" ] ;then
kill -9 ${pid}
sleep 10
figclog_file=$base_home/log/gc.log
dump_dir=$base_home/heapdump
errorlogs_dir=$base_home/log
最后的运行命令有点复杂,让我们一个个解读
- 这么长的命令,其实运行起来的命令是很简单
java -jar $base_home/app/${app_name}.jar &
,这样即可成功运行起来,&
是让此命令后台运行 ,这里这么复杂是进行了jvm优化。 -Xmx1g
: 设置JVM最大可用内存为1g。-Xms1g
: 设置JVM促使内存为1g。此值可以设置与-Xmx相同,以避免每次垃圾回收完成后JVM重新分配内存。-XX:+UseParallelGC
: 选择垃圾收集器为并行收集器。-XX:+UseParallelOldGC
: 配置年老代垃圾收集方式为并行收集。-XX:+PrintGCDetails
: 可以详细了解GC中的变化。-XX:+PrintGCTimeStamps
: 配合上面的PrintGCDetails
,可以了解这些垃圾收集发生的时间,自JVM启动以后以秒计量。-XX:+UseGCLogFileRotation
: 启用GC日志文件的自动转储。-XX:GCLogFileSize=128M
: 控制GC日志文件的大小。-XX:NumberOfGCLogFiles=1
: GC日志文件的循环数目。-Xloggc:${gclog_file}
: 把gc日志信息记录到文件gclog_file=$base_home/log/gc.log
。-XX:HeapDumpPath=${dump_dir}
: 将Heap Dump信息保存到dump_dir=$base_home/heapdump
。--spring.config.location=$base_home/config/application.yml
: 运行的配置文件,若没有config/application.yml
,则用jar里的配置文件。>> $base_home/log/${app_name}_$(date +'%Y%m%d').log
将运行的log信息保存到$base_home/log
文件夹下,log文件会以日期命名${app_name}_$(date +'%Y%m%d').log
最终的名字可能是ABC_20171206.log
。
3.使用
经过对
restart.sh
脚本的编写,然后执行chmod +x restart.sh
这个脚本就可以正常运行了sh restart.sh
(要确保ABC.jar包已经上传到app/文件夹下) -
如何在Linux环境下部署SpringBoot项目
2020-03-28 17:44:25如何在Linux环境下部署SpringBoot项目环境参考来源功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居...环境
阿里云ECS:CentOS7.3
JDK1.8参考资料
B站视频链接:https://www.bilibili.com/video/BV1Kt411G7Yi?from=search&seid=15316668477571042746
基本步骤
- 准备自己的SpringBoot项目,注意自己项目的server-port
- 在阿里云ECS上设置安全组规则,将项目的server-port端口开放
- 在阿里云ECS上安装jdk
- 创建自己的工作目录来存放我们的项目
- 将项目使用maven打成jar包上传至创建的工作目录中
- 在对应的工作目录中使用nohup java -jar (项目的jar包名称) &
- 进行测试查看是否部署成功可用
-
Linux环境部署Java项目
2020-12-16 10:52:36Linux环境部署Java项目步骤: 核心步骤: 1.阿里云centos_8_0服务器准备,安全组设置 2.Linux下jdk、maven、git安装配置 3.添加SSH公钥从GitHub(gitee)克隆源代码 4.Linux下安装docker 5.docker下安装mysql 6.git... -
linux 发布vue 项目_如何Linux部署下Vue项目环境
2021-01-11 22:04:30原标题:如何Linux部署下Vue项目环境来自:Linux迷链接:https://www.linuxmi.com/ubuntu-20-0-vue-js.html在本教程中,我们将提供一个简单的分步过程来帮助您开始使用Vue.js。Vue.js是一个功能强大的、渐进式、响应... -
linux环境部署java web项目
2017-09-14 16:03:47linux下部署java web项目主要分2个大步骤 一、安装jdk并配置java环境变量 二、部署tomcat 三、eclipse导出项目为war文件放入tomcat的webapps目录下 四、启动tomcat服务 且看下面具体步骤解析 一、安装jdk并配置java... -
linux环境下部署java项目
2019-11-06 09:50:011. JDK 下载 到官网下载相应的jdk ...根据Linux系统的版本选择64位或32位下载,官方现提供rpm和tar.gz两种版本下载。 安装: 1.1 rpm版本 [root@oracle cdrom]# rpm -ivh... -
Linux环境下快速项目部署
2014-05-16 13:59:15由于Linux和Java一样开源,所以现在在服务器的部署上基本上都是采用Linux平台作为服务器,然后部署项目!在开发项目的过程中,绝大部分程序猿还是使用最经典的windows操作系统,虽然Linux也有桌面化的系统,对于国人... -
11-在Linux环境下部署web项目
2020-04-17 21:59:02在Linux环境下部署web项目 1 预备条件 linux操作系统 安装jdk1.8 安装mysql数据库(mysql8.0) 安装tomcat服务器(9.0) web工程开发完毕 2 部署过程 本例以一个简单的SSM集成demo作为web工程部署到Centos系统。 ... -
Linux下部署springboot项目的方法步骤
2021-01-11 01:10:24最近在研究将springboot项目部署到Linux服务器上,由于springboot是内嵌了tomcat,所以可以直接将项目打包上传至服务器上。 1、在pom文件中添加springboot的maven插件 <groupid>org.springframework.boot ... -
Linux下部署WEB项目
2020-12-15 15:06:46Linux下部署Tomcat ,然后部署web项目 转载声明:http://www.cnblogs.com/xdp-gacl/p/4097608.html 解压tomcat服务器压缩包 配置环境变量 tomcat服务器运行时是需要JDK支持的,所以必须... -
Linux下部署Django项目
2019-04-15 10:43:26由于Linux系统默认自带的是2.X环境,所以我们需要去安装3.X环境的python。 安装python3.X环境 1、使用下面的命令下载Python-3.6.3.tar.xz的安装包,对应版本可以去https://www.python.org/ftp/python/对应起来: ... -
linux下部署tomcat的web项目
2018-12-27 19:21:57linux下部署tomcat的web项目准备工作安装相关依赖:jdk的安装和卸载卸载:安装环境变量配置检查安装是否成功 准备工作 安装相关依赖: jdk的安装和卸载 卸载: 查看linux是否自带有jdk,如果有,需要进行卸载... -
linux系统下部署php项目环境
2020-10-22 20:00:40先安装mysql不做介绍 安装Apache 1.apache安装方法相对简单 yum install httpd 2.外网访问虚拟机中的...找到 #Listen 改为 Listen:8080(linux中开放的端口号80XX) 3.修改完成之后我们需要再次启动httpd服务,并查看 -
linux 下部署Python项目
2019-02-18 15:32:05linux 下部署Python项目 笔记笔记笔记。。不要看项目,(手动捂脸)我自己的一个记录而已 目录 一、启用ROOT账户及密码和ssh 二、安装screen实现不掉线运行程序 三、部署项目 四、部署项目环境 五、善后 You ... -
linux环境下如何部署jar项目
2018-09-16 12:39:17linux是一个很好用的系统,因为他不像windows系统一样是黑盒的,所以很多公司的项目都是部署在linux环境下的,今天给大家分享一下啊我部署jar项目的过程 一、linux安装jdk: 1、使用Xshell5链接服务器 2、使用xftp5... -
linux下部署web项目遇到的问题
2018-05-20 00:57:26在linux下部署项目时,tomcat和jdk的版本和开发环境一直,但是部署到tomcat的webapps里无法访问,必须把项目中的web.xml里面的拦截器和过滤器全部删除了才能zhengc... -
linux下部署web项目
2019-11-19 16:22:30Linux部署web服务器 步骤 安装linux系统 安装基础工具包(根据官网) 在root账户下 安装python解释器 创建专属权限账户,根据需要对账户进行提权,创建虚拟环境 上传项目文件,根据requirements文件,安装环境依赖包 ... -
Linux环境下项目部署常用命令
2021-01-07 16:52:50Linux环境下项目部署常用命令服务器后端部署jar包查看文件大小(KB、K)给用户授予目录权限查找/根目录下以java开头的文件通过zkCli客户端连接zk服务查看文件详细大小(KB) 学习Java的同学注意了!!! 学习过程中遇到... -
Linux 下部署Django项目
2018-05-21 17:53:00Linux 下部署Django项目 说明:本文所使用的环境为CentOS 6+Python2.7+Django1.11 安装Django、Nginx和uWSGI 1.确定已经安装了2.7版本的Python;2.安装python-develyum install python-devel3.安装... -
实战JavaEE项目的集群部署和负载均衡(2):Linux集群部署环境准备
2020-10-27 15:13:01上一节中我们实现了客户管理项目的本地部署,本节我们来配置一下Linux集群部署的实验环境,项目的架构部署如图: 所有服务器的操作系统均为CentOS7,需要安装的软件依次为: 1号机: nginx服务器 2号机&3... -
Linux项目部署实验步骤 项目Linux部署上线
2019-02-27 21:36:00Linux项目部署实验步骤 项目Linux部署上线 nginx uwsgi+django 1.创建新的虚拟环境,且解决crm的环境依赖 2.在虚拟环境下安装uwsgi pip3 install uwsgi 3.uwsgi命令,如何启动python应用 ... -
linux下部署java项目
2017-12-05 11:53:54公司的项目maven形式的,我一般打包项目有两种方式: 方法一、 ...linux部署,在linux上安装好相应的环境后,拷贝好tomcat放到相应的位置,把项目复制到webapps中的Root下。 (a)首先ps -ef... -
【生产环境部署】部署项目到生产环境Linux下
2018-12-27 15:12:00以前自己写过一个开源的项目,没部署到线上环境,借此机会熟悉下线上部署的流程 1、Linux上安装数据库MySQL,创建一个数据库database 名 Mxonline 2、使用远程工具Navicat Premium登录Linux数据库上,并把本地已经...
-
基于伪随机码相位调制和外差探测的星载激光高度计仿真研究
-
通过聚焦多值纯相光栅调制的涡旋光束创建三维形状可控焦点阵列
-
linux-文本编辑器
-
HUE 接口调用
-
一份用户访谈操作指南
-
jacob以目录和段落分析读取Word文档(自己写的)
-
python中使用selenium调用Firefox缺少geckodriver解决方法
-
有哪些适合新手的练手Java项目?
-
Mycat 实现 MySQL的分库分表、读写分离、主从切换
-
大型超市监控系统解决方案.doc
-
php-5.3.28-Win32-VC9-x86.zip
-
centos中minio使用ssl协议
-
响应式编程入门与实战(Reactor、WebFlux、R2DBC)
-
PPTP_NNN 服务生产环境实战教程
-
C++MFC开发远程控制软件教程(VS2013)
-
不饱和双核羰基铁羰基衍生物中新型硫代硼烷基偶联React的密度泛函理论研究
-
2021 PHP租车系统 毕业设计 毕设源码 源代码使用教程
-
基于python的dango框架购物商城毕业设计毕设源代码使用教程
-
利用反冲感应共振对被困原子进行快速测温
-
虚幻4引擎基础