springboot项目:项目部署

第一步:打开终端,进入项目根目录 输入命令: cd /Users/liuxiaoming/Documents/software/ideawork/sell/
第二步:对项目进行打包编译跳过测试: mvn clean package -Dmaven.test.skip=true
第三步:查看打完的包: ls target 名字叫做:sell-0.0.1-SNAPSHOT.jar的包

第四步:若想要自定义jar包 需要打开该项目idea中的pom文件,加入:<finalName>sell</finalName>

第五步:重现打包 mvn clean package -Dmaven.test.skip=true 查看 ls target 包名字:sell.jar

第六步:连接虚拟机 输入命令:ssh root@192.168.1.183
回车后 输入密码123456 回车
第七步:进入目录: cd /opt/javaapps/
查看目录路径:pwd
第八步:将本地项目放入到虚拟机的 /opt/javaapps 路径中:
输入命令:scp target/sell.jar root@192.168.1.183:/opt/javaapps
查看虚拟机中 /opt/javaapps 路径的 项目jar包

第九步:启动项目:输入命令:java -jar sell.jar

注:若启动项目 出现 java.net.BindException: 地址已在使用 报错,则
1. 执行netstat -alnp | grep 8080

2. kill -9 997
3. 杀死进程后 重新启动项目:java -jar sell.jar

第十步: 在浏览器中输入请求(IP为虚拟机的IP):http://192.168.1.183:8080/sell/buyer/product/list?sellerId=123456

可以在终端查看到打印的日志

注:若想修改端口号从8080改为8090则输入命令: java -jar -Dserver.port=8090 sell.jar
1. 则项目的端口号以8090启动

2. 浏览器输入请求: http://192.168.1.183:8090/sell/buyer/product/list?sellerId=123456

注:多环境的使用
设置两个配置分别为开发环境和生产环境
1.复制两次原来的application.yml文件 改名为为application-prod.yml 和 application-dev.yml
2. application-prod.yml 和 application-dev.yml文件一致 将prod的jpa sql语句的显示注掉,dev不变

3.application.yml文件中的内容为
spring:
profiles:
active: dev
则 项目本地启动的配置文件为 application-dev.ym

4.重新打包该项目:mvn clean package -Dmaven.test.skip=true
a.打包成功后再将本地jar包拷贝到虚拟机中 : scp target/sell.jar root@192.168.1.183:/opt/javaapps
b.在连接虚拟机中的终端中: control + c 停止项目,
c.启动项目(配置文件 application-prod.yml) 输入命令:java -jar -Dserver.port=8090 -Dspring.profiles.active=prod sell.jar
d. 在浏览器输入请求:http://192.168.1.183:8090/sell/buyer/product/list?sellerId=123456
e.终端中没有打印出sql语句, 说明此时虚拟机上运行的项目调用的是生产配置文件
注:将项目启动置为后台运行:
1.重新打开终端:连接虚拟机:ssh root@192.168.1.183 回车,输入密码,回车进入
2. 进入到指定目录: cd /opt/javaapps 查看:ls
3. 启动项目: nohup java -jar sell.jar > /dev/null 2>&1 &
回车后出现2806进程号
查看该项目进程号:ps -ef |grep sell.jar 若查到此时项目已经启动完毕

4.在浏览器中输入请求:http://192.168.1.183:8080/sell/buyer/product/list?sellerId=123456

注:编写脚本
后台启动运行项目是输入的命令:nohup java -jar sell.jar > /dev/null 2>&1 &
编写成脚本运行命令:
1.输入命令:vim start.sh
2. 脚本中编写
# /bin/sh
nohup java -jar sell.jar > /dev/null 2>&1 &
3. esc shift + ; wq!
4.运行脚本 : bash start.sh
查看项目是否已启动:ps -ef |grep sell.jar

注:在centos (7)启动项目编写脚本的方式:
1. 进入文件夹:cd /etc/systemd/system/
2. pwd
3. ls

4. vim sell.service
5. 
springboot项目:项目部署的更多相关文章
- spring-boot项目热部署以及spring-devtools导致同类不能转换
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring- ...
- 【IDEA】【2】创建Maven项目及部署发布
正文: 1,我参考的文档1已经比较全面了,需要注意的是界面可能有点不一样,有些地方需要自己注意一下 2,project和model的概念:挺困扰人的,我目前没有多模块开发,开发多个项目的时候是开了多个 ...
- springboot获取项目跟目录
springboot部署之后无法获取项目目录的问题: 之前看到网上有提问在开发一个springboot的项目时,在项目部署的时候遇到一个问题:就是我将项目导出为jar包,然后用java -jar ...
- Github 上 10 个值得学习的 Springboot 开源项目
Spring Boot 几乎继承了所有 Spring 框架的优点,同时还可以让项目的配置更简化.编码更简化.部署更方便.近两年受到很多开发者的追捧,也是火热的不行! 下面给大家整理了 10 个 Git ...
- IntelliJ IDEA WEB项目的部署配置
以下内容是我网上找的比较全面了,其中关于facets配置很多地方都没有说明,其实很重要,我加入了自己的理解.其他来自网络.在导入一个项目有问题时,建议先创建一个正确的web项目,然后对比配置项,一般就 ...
- itellij idea导入web项目并部署到tomcat
概述 主要分为项目配置和tomcat配置两大步骤. 一.项目配置 打开idea,选择导入项 选择将要打开的项目路径后,继续选择项目的原本类型(后续引导设置会根据原本的项目类型更新成idea的项目),此 ...
- 在Eclipse for mac中配置tomcat,使web项目自动部署到tomcat
jdk.tomcat的配置就不多说了,网上一大堆. 一.发现问题 在eclipse中新建Dynamic Web Project,配置好本地的tomcat并写好代码后选择Run on Server,但运 ...
- VS2010项目的部署与安装
VS2010项目的部署与安装 转自:http://www.cnblogs.com/smile-wei/archive/2012/07/06/2579607.html winform程序,我想进行安装. ...
- Eclipse中的Web项目自动部署到Tomcat
原因 很长时间没用Eclipse了,近期由于又要用它做个简单的JSP项目,又要重新学习了,虽然熟悉的很快,但记忆总是很模糊,偶尔犯错,以前很少写博客,现在感觉还是很有必要的,编程中每个人对于犯过的错误 ...
- 项目分布式部署那些事(2):基于OCS(Memcached)的Session共享方案
在不久之前发布了一篇"项目分布式部署那些事(1):ONS消息队列.基于Redis的Session共享,开源共享",因为一些问题我们使用了阿里云的OCS,下面就来简单的介绍和分享下相 ...
随机推荐
- linux每天一小步---touch命令详解
1 命令功能: 创建文件和修改文件或者目录的时间戳 2 命令语法: touch [选项] [文件名或者目录名] 3 命令参数: -a 只修改文件的access(访问)时间. -c 或-- ...
- Linux中许多常用命令是必须掌握的,这里将我学linux入门时学的一些常用的基本命令分享给大家一下,希望可以帮助你们。
Linux中许多常用命令是必须掌握的,这里将我学linux入门时学的一些常用的基本命令分享给大家一下,希望可以帮助你们. 这个是我将鸟哥书上的进行了一下整理的,希望不要涉及到版权问题. 1.显示日期的 ...
- [label][IDE] Develop Node.js Project With WebStorm
WebStorm 是一个支持 Node.js,CoffeeScript, TypeScript, Dart, Jade, Sass, LESS and Stylus 这些最新 web 开发技术的集成开 ...
- MSP430G2553 模数转换器 ADC10
一.ADC10组成 ADC10模块是MSP430 MCU内部的一个高性能.10位的模数转换器,包含了SAR(Successive-Approximation-Register) core.采样选择控制 ...
- Tempdb--Row version
Trigger:在SQL SERVER 2005之前,触发器需要使用日志来获取DELETED AND INSERTED的数据,因此会打乱日志顺序写的模式,造成磁盘压力,在SQL Server2005 ...
- solr特点三: 基于Solr实现排序定制化参考
排序实现有N种形式,最低成本.最快响应时间是目标 一份索引,支持N种排序策略并且在线互不干扰是要考虑的每一种实现,处理的场景是不同的,不要千篇一律 020排序,从索引到效果,有不少坑,这篇文章没有细说 ...
- leetcode 字符串转整数(atoi)
实现atoi,将字符串转为整数. 在找到第一个非空字符之前,需要移除掉字符串中的空格字符.如果第一个非空字符是正号或负号,选取该符号,并将其与后面尽可能多的连续的数字组合起来,这部分字符即为整数的值. ...
- C#基础笔记(第十九天)
1.CSS 层叠样式表 对HTML的补充实现网页内容和页面效果的彻底分离1.内联样式表(在标签内设置元素的样式)<p style="background:red; font-size: ...
- [翻译]pytest测试框架(一)
此文已由作者吴琪惠授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 纯官网译文而已... pytest是一个成熟的.全功能的python测试工具. pytest框架编写测试用例 ...
- RabbitMq初探——用队列实现RPC
rabbitmq构造rpc 前言 rpc——remote procedure call 远程调用.在我接触的使用过http协议.thrift框架来实现远程调用.其实消息队列rabbitmq也可以实现. ...