bboss应用程序运行容器使用介绍

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: bboss微服务运行容器使用介绍,通过简单的配置文件,配置主程序需要的依赖库和依赖资源,快速搭建应用程序运行环境容器,切入正题。 微服务容器相关的资源 bboss-rt-xxxx.jar组件,xxxx代表版本号 服务主程序配置文件,可以有多个配置文件,每个对应一个主程序,config.
bboss微服务运行容器使用介绍,通过简单的配置文件,配置主程序需要的依赖库和依赖资源,快速搭建应用程序运行环境容器,切入正题。
微服务容器相关的资源
  • bboss-rt-xxxx.jar组件,xxxx代表版本号
  • 服务主程序配置文件,可以有多个配置文件,每个对应一个主程序,config.properties是默认配置主程序


导入微服务容器组件:
gradle坐标
group: 'com.bbossgroups', name: 'bboss-rt', version: "5.0.5.3",transitive: false


maven坐标
<dependency>
    <groupId>com.bbossgroups</groupId>
    <artifactId>bboss-rt</artifactId>
    <version>5.0.5.3</version>
</dependency>



微服务启动指令:
基于默认配置config.properties启动微服务容器
java -Xms1024m -Xmx1024m -Xmn512m -XX:PermSize=128M -XX:MaxPermSize=128M -jar bboss-rt-xxxx.jar
基于自定义配置config-gradle2.properties启动微服务容器:
java -Xms1024m -Xmx1024m -Xmn512m -XX:PermSize=128M -XX:MaxPermSize=128M -jar bboss-rt-xxxx.jar  --conf=config-gradle2.properties


假设应用程序根目录为:run

将bboss启动应用程序帮助类包bboss-rt.jar文件放到run目录下,bboss-rt.jar文件下载的地址: bboss-rt.jar

一个简单的示例下载地址: 下载
下载下来后,解压运行runcontainer目录下的startup.bat或者startup.sh就可以看运行主程序的效果了。

示例涉及的主程序源码eclipse工程: 下载

运行容器的功能和配置下面详细介绍:
1.配置主程序需要的依赖库和依赖资源

在run目录下放置config.properties文件,内容如下:

mainclass=testclone.Test

mainclass指定了要运行的主程序,将主程序依赖的资源文件放到run/resources目录下,将主程序依赖的jar和其他库文件放到run/lib目录下,这样就可以写下面的运行指令了。
一个示例配置为:
#please set yourself mainclass,this is only a simple example.
mainclass=testclone.Test

#put yourself property parameter here,you can get these parameters use follow codes in your mainclass:
#String port = CommonLauncher.getProperty("port","8080");//同时指定了默认值 
#String contextPath = CommonLauncher.getProperty("context","bigdata");//同时指定了默认值 
#
port=86
context=bigdata

#put yourself extend libs path here,default this tool will always find jars from libs under this project.
#extlibs=/WebRoot/WEB-INF/lib

#put yourself extend resource path here,default this tool will always find resource files from resources under this project.
extresources=/classes



2.编写和运行指令(linux和windows版)

linux

运行文件:在run目录下新建startup.sh文件,内容为:

#!/bin/sh
nohup java -Xms1024m -Xmx1024m -Xmn512m -XX:PermSize=128M -XX:MaxPermSize=128M -jar bboss-rt-5.0.3.1.jar >startup.log &
#指定配置文件方式
#nohup java -Xms1024m -Xmx1024m -Xmn512m -XX:PermSize=128M -XX:MaxPermSize=128M -jar bboss-rt-5.0.3.1.jar --conf=config-gradle.properties > startup.log &
授予可执行权限:chmod +x startup.sh

ok,可以在run目录下,执行./startup.sh,就可以看执行效果了,如果想让你的程序在后台一直运行,那么可以执行以下指令:
nohup ./startup.sh > run.log &

windows

运行文件:在run目录下新建startup.bat文件,内容为:

java -Xms1024m -Xmx1024m -Xmn512m -XX:PermSize=128M -XX:MaxPermSize=128M -jar bboss-rt.jar

ok,可以在run目录下,执行startup.bat,就可以看执行效果了。

3.进阶

bboss-rt.jar工具包会默认加载resources、lib、classes、WebRoot/WEB-INF/classes以及WebRoot/WEB-INF/lib四个目录下的jar、class和资源文件,如果想在config.properties配置一些其他的依赖目录和依赖资源,可以指定extlibs和extresources两个属性,例如:


extlibs=/WebRoot/WEB-INF/lib
extresources=/WebRoot/WEB-INF/classes

多个目录可以用;号分隔,例如:

extlibs=/WebRoot/WEB-INF/lib;/WebRoot/WEB-INF/lib1
extresources=/WebRoot/WEB-INF/classes;/WebRoot/WEB-INF/classes1

如果想在config.properties文件中配置一些其他主程序需要依赖的参数,也是可以的:

port=8080
context=bigdata

那么怎么在主程序中获取这些参数呢,方法如下:
import org.frameworkset.runtime.CommonLauncher;
String port = CommonLauncher.getProperty("port","8080");//同时指定了默认值
String contextPath = CommonLauncher.getProperty("context","bigdata");//同时指定了默认值

如果主程序中需要用到当前运行环境的根目录,则只需要在主程序java类中添加以下方法,即可将根目录文件对象注入到主程序中:
public static void setAppdir(File appdir) {
		approotdir = appdir;
	}

ok,bboss启动应用程序帮助类功能介绍完毕
目录
相关文章
|
1月前
|
监控 Docker 容器
在Docker容器中运行打包好的应用程序
在Docker容器中运行打包好的应用程序
|
2月前
|
持续交付 开发者 Docker
探索容器化技术Docker及其在现代软件开发中的应用
探索容器化技术Docker及其在现代软件开发中的应用
|
1月前
|
存储 Prometheus 监控
Docker容器内进行应用调试与故障排除的方法与技巧,包括使用日志、进入容器检查、利用监控工具及检查配置等,旨在帮助用户有效应对应用部署中的挑战,确保应用稳定运行
本文深入探讨了在Docker容器内进行应用调试与故障排除的方法与技巧,包括使用日志、进入容器检查、利用监控工具及检查配置等,旨在帮助用户有效应对应用部署中的挑战,确保应用稳定运行。
48 5
|
1月前
|
开发框架 安全 开发者
Docker 是一种容器化技术,支持开发者将应用及其依赖打包成容器,在不同平台运行而无需修改。
Docker 是一种容器化技术,支持开发者将应用及其依赖打包成容器,在不同平台运行而无需修改。本文探讨了 Docker 在多平台应用构建与部署中的作用,包括环境一致性、依赖管理、快速构建等优势,以及部署流程和注意事项,展示了 Docker 如何简化开发与部署过程,提高效率和可移植性。
67 4
|
2月前
|
持续交付 开发者 Docker
探索容器化技术Docker及其在现代软件开发中的应用
探索容器化技术Docker及其在现代软件开发中的应用
|
2月前
|
运维 Kubernetes Docker
深入理解容器化技术及其在微服务架构中的应用
深入理解容器化技术及其在微服务架构中的应用
68 1
|
2月前
|
Kubernetes Linux 开发者
深入探索容器化技术——Docker 的实战应用
深入探索容器化技术——Docker 的实战应用
100 0
|
2月前
|
存储 Cloud Native 开发者
深入探索容器化技术——Docker的实战应用
深入探索容器化技术——Docker的实战应用
42 0
|
28天前
|
监控 NoSQL 时序数据库
《docker高级篇(大厂进阶):7.Docker容器监控之CAdvisor+InfluxDB+Granfana》包括:原生命令、是什么、compose容器编排,一套带走
《docker高级篇(大厂进阶):7.Docker容器监控之CAdvisor+InfluxDB+Granfana》包括:原生命令、是什么、compose容器编排,一套带走
200 77
|
9天前
|
Ubuntu Linux 开发工具
docker 是什么?docker初认识之如何部署docker-优雅草后续将会把产品发布部署至docker容器中-因此会出相关系列文章-优雅草央千澈
Docker 是一个开源的容器化平台,允许开发者将应用程序及其依赖项打包成标准化单元(容器),确保在任何支持 Docker 的操作系统上一致运行。容器共享主机内核,提供轻量级、高效的执行环境。本文介绍如何在 Ubuntu 上安装 Docker,并通过简单步骤验证安装成功。后续文章将探讨使用 Docker 部署开源项目。优雅草央千澈 源、安装 Docker 包、验证安装 - 适用场景:开发、测试、生产环境 通过以上步骤,您可以在 Ubuntu 系统上成功安装并运行 Docker,为后续的应用部署打下基础。
docker 是什么?docker初认识之如何部署docker-优雅草后续将会把产品发布部署至docker容器中-因此会出相关系列文章-优雅草央千澈