当前位置:首页 > CN2资讯 > 正文内容

java 远程监控windows服务 java远程服务器

1天前CN2资讯


jenkins部署 java项目到远程 windows服务器

1、查看windows服务器是否有 ssh服务。

cmd模式,输入 ssh.如果报错就去安装ssh(可以去下 openSSH)

2、然后直接用自己的电脑就是客户端。用xshell,连这个远程服务器的IP。输入登陆这个windows 服务器!!的账号密码。就是微软账户登陆开机的。一般能连上。

3、配置jenkins。新建一个maven项目,里面git项目很简单,输入ssh git地址。然后远程推送,输入

remove prefix,source 等。

workspace/当前目录/{从这里开始}。

填写{从这里开始}.然后还有远程地址问题。

输入了c:/print。提示无法更改。

4、Remote directory 这个目录要传送war包到目标服务器的目录,这个很关键,这个适合系统管理-》系统设置中的Publish over SSH的Remote Directory拼在一起的,例如:

最后的结果是/usr/local/tomcat/webapps。

Jenkins的publish-over-ssh组件,Remote directory设置的路径(p1),都是相对于SSH server配置中的Remote Directory(p0,默认为账号家目录),即使p1写成绝对路径,也会拼接到p0后面。
ps:Jenkins Jenkins 2.263.3。
ps:在现场部署项目,用到jenkins配置自动部署,测试的时候发现路径不对,原来是绝对路径无效。记录一下。

Jenkins SSH Key 分组下的Passphrase、Path to key 、 Key 是秘钥登录方式需要配置的

这里用的用户名密码的方式登录

在ssh servers分组下配置ssh server项

Name:SSH Server项的名称 Hostname:要操作的远程服务器的地址 Username:要操作远程服务器的登录用户名 Remote Directory:配置可操作的路径 /默认C盘 切换其他磁盘/E:

5、配置好SSH SERVER在这里配置好路径。

6、Remote directory,填写子路径。完美。成功解决。测试执行文件。

\1. 把程序变做Windows服务,然后shell中通过net start 命令启动服务

但这种做法需要改变程序或者依赖其他程序把当前的程序变为服务

\2. 通过Windows的计划任务来实现

创建一个启动程序的计划任务,然后通过以下命令来启动。

schtask /run /tn “/任务目录/任务名字”

7、运行bat项目

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pnQOnNLG-1658908440911)(https:///gh/yasin4040/pic@main/img/image-20220727104237770.png)]

应该是不能用 @echo off,超时了。(我没用这个!!!)

@echo off setlocal enabledelayedexpansion :: 设置服务启动的端口 set port=10086 :: 根据端口查询已有服务并kill进程 for /f "tokens=1-5" %%a in ('netstat -ano ^| find ":%port%"') do ( if "%%e%" == "" ( set pid=%%d ) else ( set pid=%%e ) echo !pid! ) if NOT "!pid!" == "" ( taskkill /f /pid !pid! ) :: 设置目标目录、源目录、文件名。将jar复制到其他文件夹中 set tarDir=C:\ProgramData\Jenkins\.jenkins\workspace\jar\ set orgDir=C:\ProgramData\Jenkins\.jenkins\workspace\bmot\zpark-console\target\ set filename=zpark-console-v1.0.jar if not exist %tarDir% ( mkdir %tarDir% ) copy %orgDir%%filename% %tarDir% > nul if "%errorlevel%"=="0" ( echo copy successfully ) else ( echo Copy failed ) :: 运行jar包 start java -jar %tarDir%%filename% --spring.profiles.active=local --server.port=%port% exit

8、修改方案 做成服务

最终我的方案是索性将jar包制作为windows的服务,完美解决。

1、下载WinSW.NET4.exe这个工具(可以把jar包做成服务)。

参考https://zhuanlan.zhihu.com/p/364778389 比如这里做了一个test_server的windows服务

2、将stop.bat中的脚本改为

Net Stop test_server
3、start.bat中的脚本改为

Net Start test_server
完美解决了jar包在远程windows服务器下的部署问题,有问题的朋友欢迎评论和私信。 作者:我是老爆老爆是我 https://www.bilibili.com/read/cv14317175/ 出处:bilibili

9、sample.jar、sample.xml、winsw.exe

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ikELAimN-1658908440911)(https:///gh/yasin4040/pic@main/img/image-20220727105643641.png)]

<service> <id>sample</id> <name>sample</name> <description>This service runs sample system.</description> <executable>java</executable> <arguments>-Xrs -Xmx256m -jar "%BASE%\sample.jar" </arguments> <log mode="roll" /> <onfailure action="restart" /> </service>

sample install

10、修改maven 打包后的名称

finalName

11、改为服务

sample install sample start sample stop

最终我的方案是索性将jar包制作为windows的服务,完美解决。

1、下载WinSW.NET4.exe这个工具(可以把jar包做成服务)。

参考https://zhuanlan.zhihu.com/p/364778389 比如这里做了一个test_server的windows服务

2、将stop.bat中的脚本改为

Net Stop test_server
3、start.bat中的脚本改为

Net Start test_server 作者:我是老爆老爆是我 https://www.bilibili.com/read/cv14317175/ 出处:bilibili

问题,无法install

12、完美解决api-ms-win-crt-runtime-l1-1-0.dll 丢失问题

是VC的一个程序:VC redit.exe
链接:https://www.microsoft.com/zh-cn/download/details.aspx?id=48145

下载时选择x86还是x64的根据自己系统的需求,安装成功就可以了。

删除服务

输入命令:sc delete DmhsServiceDM 回车后即可删除该系统服务。

又一个不杀死进程(我也没用这个)

windows下使用jenkins执行bat或exe文件时不报错但是没有正常执行的解决方案 陌生人_d67b 0.093 2021.10.26 16:16:38 字数 104 阅读 466 使用管理员模式打开命令行,执行下列语句 "C:\Program Files (x86)\Jenkins\jre\bin\java" -Xrs -Xmx256m -Dhudson.lifecycle=hudson.liftcycle.WindowsServiceLifecycle -jar "C:\Program Files (x86)\Jenkins\jenkins.war" --htppPort=8080 --webroot="C:\Program Files (x86)\Jenkins\war" 可以通过加入下列参数使得jenkins在构建完成后不会自动杀死进程 -Dhudson.util.ProcessTree.disable=true -jar jenkins.war

cmd

/C 代表 /Close

/K 代表 /Keep的简写

cmd /c call D:\print-app-new-test\start.bat

13、执行成功。

最后把start和stop命令合并到一个bat命令。

因为不会cmd…很尴尬。

最后也成功启动,远程windows服务器上的服务也启动了


    你可能想看:

    扫描二维码推送至手机访问。

    版权声明:本文由皇冠云发布,如需转载请注明出处。

    本文链接:https://www.idchg.com/info/30774.html

    分享给朋友:

    “java 远程监控windows服务 java远程服务器” 的相关文章

    存储VPS:高效处理大量数据,灵活配置,按需付费

    什么是存储VPS 存储VPS是一种专门为处理大量数据而设计的虚拟专用服务器。它提供了广泛的磁盘空间,并且通常针对高容量存储需求进行了优化。无论是个人用户还是企业用户,存储VPS都能满足他们对数据存储的高要求。这种服务器不仅具备强大的存储能力,还提供了灵活的配置选项,用户可以根据自己的需求选择合适的硬...

    如何在VPS上轻松部署和管理Telegram机器人 | 详细指南

    1.1 创建Telegram机器人 在Telegram上创建一个机器人非常简单。我们只需要与@BotFather进行对话。@BotFather是Telegram官方提供的机器人管理工具,专门用于创建和管理机器人。通过发送/newbot命令,我们可以开始创建自己的机器人。@BotFather会引导我们...

    BT开心版:简化Linux服务器管理的最佳工具

    BT开心版是一个强大的Linux服务器管理工具,致力于简化网站的搭建、管理和维护过程。对于那些刚接触Linux操作系统的用户来说,BT开心版的出现无疑是一大福音。它的设计理念是让每个用户无论有多少技术背景,都能高效地管理自己的网页,不必深入学习Linux系统的复杂操作。 首先,我发现BT开心版的最大...

    50kvm VPS主机服务:最优性价比与便捷选择

    50kvm是一个备受推崇的VPS主机服务品牌,它因其卓越的性价比和高效的速度而广受欢迎。这个品牌提供多种不同 유형的VPS解决方案,覆盖了从美国到亚洲的多个数据中心。特别是美国波特兰的Cera (NCP)和洛杉矶C3、Cera CN2 GIA等产品,都是非常值得关注的选择。 在我了解50kvm的过程...

    如何获取免费VPS服务无需信用卡:一站式指南

    在互联网时代,虚拟专用服务器(VPS)成为了很多开发者和企业的优选。VPS基本上是一个分隔的服务器环境,用户可以在其中安装操作系统和运行应用程序。它既拥有独立服务器的功能,又比共享主机更具经济性。对很多人来说,了解VPS的运行机制和它的适用场景是非常重要的。 免费VPS服务越来越受到关注。在预算有限...

    在Ubuntu上使用宝塔面板进行服务器管理的全方位指南

    宝塔面板简介 作为一款在服务器管理领域取得广泛认可的工具,宝塔面板在Linux系统中尤为突出,特别是针对Ubuntu用户而言。通过提供直观的操作界面,宝塔有效地简化了复杂的Linux服务器管理过程。对于我这样的用户来说,宝塔无疑是一个不可多得的助手,轻松应对日常维护和配置工作。 宝塔面板不仅仅是一款...