Giter Site home page Giter Site logo

jdeploy's Introduction

JDeploy

JDeploy自动化部署平台

JDeploy是Java + Shell实现的基于Linux系统的自动化、可视化的项目部署平台,能部署Java服务、Java Web项目,可以简化项目部署操作,无需繁琐的黑窗口SSH指令及Jenkins复杂的配置,只需要提供SVN/GIT地址即可部署项目。

JDeploy

JDeploy

JDeploy

JDeploy

JDeploy自动化部署平台部署

服务器环境:Linux(不支持Windows),需要Java环境和Maven环境,支持javamvnsvngit命令。

创建数据库(MySQL)

运行SQL文件创建数据库:doc/sql.sql

Shell脚本

JDeploy自动化部署平台是基于Shell脚本实现。

Java项目部署Shell脚本:doc/shell/javadeploy

Java Web项目部署Shell脚本:doc/shell/javawebdeploy

Shell脚本的目录位置需要配置在config.properties中。

Jetty

JDeploy自动化部署平台Java Web项目部署是基于Jetty服务器的。

需要自行下载Jetty服务器,并在config.properties中配置Jetty目录下start.jar路径。

配置文件

配置文件:src/main/resources/config.properties

需要配置数据库连接信息、Shell脚本位置、Jetty位置、项目部署位置。

部署

以上配置完成后,将项目部署在Jetty/Tomcat服务器上即可。

登录JDeploy

部署成功后,默认登录用户名:xxg,密码:test1234。JDeploy使用Spring Security登录验证,配置文件:src/main/resources/springSecurity.xml,可以根据部署需求灵活配置。可参考博客:http://xxgblog.com/2015/09/06/spring-security-start/

Java项目部署

新建项目

在“Java项目部署”选项中点击“创建”按钮,进入创建页面。需要填写“项目名称”、“SVN/GIT地址”、“Maven profile”,例如:

项目名称:JDeploy测试Java项目

SVN地址:http://code.taobao.org/svn/jdploy_java_deploy_test/

Maven profile:Maven打包时使用的pom.xml中的profile,如果不需要可以为空

部署项目

在项目详情页面点击“部署”按钮,会从SVN中检出最新版本代码,并打包运行。

重启和停止

如果项目已经完成部署,可以通过点击“重启”或者“停止”按钮来重启或停止。

查看运行状态和显示日志

可在“运行状态”面板中查看程序运行状态,点击“查看日志”可以查看程序在控制台输入的日志。

对Java项目要求

DEMO:http://code.taobao.org/svn/jdploy_java_deploy_test/

1、使用Maven管理项目,通过mvn clean package可以打可运行的jar包。

2、jar包可以通过java -jar xxx.jar直接运行(包含依赖包,并配置好main方法所在Class)。

建议使用maven-shade-plugin插件:

<plugin>
	<groupId>org.apache.maven.plugins</groupId>
	<artifactId>maven-shade-plugin</artifactId>
	<version>2.3</version>
	<executions>
		<execution>
			<phase>package</phase>
			<goals>
				<goal>shade</goal>
			</goals>
			<configuration>
				<transformers>
					<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
						<mainClass>com.xxg.jdeploy.test.javadeploy.Main</mainClass>
					</transformer>
					<transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
						<resource>META-INF/spring.handlers</resource>
					</transformer>
					<transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
						<resource>META-INF/spring.schemas</resource>
					</transformer>
				</transformers>
			</configuration>
		</execution>
	</executions>
</plugin>

Java Web项目部署

新建项目

在“Java Web项目部署”选项中点击“创建”按钮,进入创建页面。需要填写“项目名称”、“contextPath”、“端口号”、“SVN/GIT地址”、“Maven profile”,例如:

项目名称:JDeploy测试Java Web项目

contextPath:/jdploytest(也可以填写'/')

端口号:8080

SVN地址:http://code.taobao.org/svn/jdploy_javaweb_deploy_test/

Maven profile:Maven打包时使用的pom.xml中的profile,如果不需要可以为空

部署项目

在项目详情页面点击“部署”按钮,会从SVN中检出最新版本代码,并打包运行。

重启和停止

如果项目已经完成部署,可以通过点击“重启”或者“停止”按钮来重启或停止。

查看运行状态和显示日志

可在“运行状态”面板中查看程序运行状态,点击“查看日志”可以查看程序在控制台输入的日志。可用浏览器访问http://ip:port/contextPath。

对Java Web项目要求

DEMO:http://code.taobao.org/svn/jdploy_javaweb_deploy_test/

使用Maven管理项目,通过mvn clean package可以打成war包。

SVN/GIT配置用户密码

如果SVN需要用户密码访问,可以这样配置:http://code.taobao.org/svn/test/trunk --username yourusername --password yourpassword

如果GIT需要用户密码访问,可以这样配置:https://yourusername:[email protected]/wucao/test.git

jdeploy's People

Contributors

wucao avatar luoweifei361 avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.