首页>>后端>>SpringBoot->windows部署springboot项目(windows部署spring boot)

windows部署springboot项目(windows部署spring boot)

时间:2023-12-02 本站 点击:0

将 springboot 应用安装成 Windows 服务

安装工具 springboot 官网 doc 推荐 WinSW

WinSW 的 github 地址

WinSW 3 要运行在 .NET Framework 4.6.1 及更高版本上。如果机器上没有安装 .NET Framework,可以使用基于 .NET Core 的 64-bit 或者 32-bit 的 exe 工具代替 WinSW 3, WinSW-x64.exe 、 WinSW-x86.exe 。

使用 WinSC 将 springboot 应用 jar 安装为 Windows 服务非常简单

将 id 、name 改成自己的服务名(只要保证在所有的 Windows 服务中名字唯一即可),有环境变量的话,就配置到 env 标签中,executable 和 arguments 就是启动服务时要执行的命令,和命令行窗口中敲的启动 jar 的命令一样。

备注:只要保证 exe 文件 和 xml 文件 放在同一个目录中即可, jar 的位置没有强制要求,因为 jar 文件的路径是在 xml 文件中配置的。

另一种命令方式

windows设置SpringBoot程序(bat脚本)开机自启

新建文本档文件,重命名文件,如run.bat

编写启动脚本,以启动SpringBoot程序为例,路径需为绝对路径。

双击run.bat,测试是否能启动程序。

将脚本放在C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp文件夹下。

注意开启显示windows的隐藏文件夹。

关闭账号验证,是因为当windows开机后,不登录程序不会触发启动,无法实现开机后程序自启。

win+R输入 control userpasswords2

在开的窗口中去掉【要使用本计算机,用户必须输入用户名密码】前的勾

在未安装docker环境的windows系统上将springboot项目镜像推送到远程主机

一,修改pom文件

在pom.xml文件中添加以下信息:

plugins

plugin

groupIdorg.springframework.boot/groupId

artifactIdspring-boot-maven-plugin/artifactId

configuration

forktrue/fork

/configuration

/plugin

plugin

groupIdcom.spotify/groupId

artifactIddocker-maven-plugin/artifactId

version1.0.0/version

configuration

imageName {project.artifactId}/imageName

dockerDirectory {project.build.directory}/directory

include${project.build.finalName}.jar/include

/resource

/resources

dockerHost;/dockerHost

/configuration

/plugin

/plugins

二,配置好Dockerfile文件

FROM java:8

MAINTAINER LiXiang

VOLUME /tmp

RUN echo 'Asia/Shanghai' /etc/timezone

RUN mkdir -p /usr/local/app

COPY sscm-eureka-server-1.0.0.jar app.jar

EXPOSE 8761

ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]

三,开启远程主机docker远程访问权限

想要开启远程访问,就需要修改下面这个配置文件

vim /usr/lib/systemd/system/docker.service

1,在该文件[services]下增加以下配置:

ExecStart=

ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock

增加完后保存

2,重启服务

systemctl daemon-reload

systemctl restart docker

3,开启防火墙访问权限

以下功能基于您拥有root用户权限

安装:

sudo yum install firewalld firewall-config -y

1

启动、停止、禁用、启用

查看状态:

systemctl status firewalld

1

启动:

systemctl start firewalld

1

停止:

systemctl stop firewalld

1

禁用:

systemctl disable firewalld

1

启用:

systemctl enable firewalld

1

开放端口区间

firewall-cmd --permanent --zone=public --add-port=100-500/tcp

firewall-cmd --permanent --zone=public --add-port=100-500/udp

firewall-cmd --reload

1

2

3

查看开放的端口

firewall-cmd --zone=public --list-ports

1

查看还有哪些服务可以打开

firewall-cmd --get-services

1

添加

firewall-cmd --zone=public --add-port=80/tcp --permanent (--permanent永久生效,没有此参数重启后失效)

1

重新载入

firewall-cmd --reload

1

查看

firewall-cmd --zone=public --query-port=80/tcp

1

删除

firewall-cmd --zone=public --remove-port=80/tcp --permanent

4,在本地使用maven打包命令

mvn clean package docker:build 即可将镜像推送至指定的主机

5,验证

1,打开本地浏览器输入:http://远程ip:2375,如果返回:{"message":"page not found"} 即表示远程端口开放成功

2,远程主机上使用docker images,如果在列表中出现了目标镜像,即表示远程推送成功。

window系统安装skywalking

skywalking 是一个开源的观测平台, 用于从服务和云原生基础设施收集, 分析, 聚合以及可视化数据.。生产环境下该平台是安装在linux 系统上,或者是docker容器化运行。但如果要在本地开发的话可能免不了要在windows系统下安装。

windows系统安装skywalking特别简单。解压apache-skywalking-apm-8.1.0.tar.gz,进入bin目录,在cmd窗口执行命令

测试的windows系统在虚拟机中。windows系统默认防火墙不支持远程访问。在虚拟机的浏览器端进行访问测试:

application.yml

springboot项目tomcat服务器默认8080端口,与skywalking-UI端口冲突,默认修改application.yml的项目端口号

SkywalkingDemoController

controller/SkywalkingDemoController

修改项目的 VM 运行参数,点击菜单栏中的 Run - EditConfigurations... ,此处我们以skywalkingdemo1 项目为例,修改参数如下:

修改D:\skywalking\webapp\webapp.yml 。 主要修改port: 18080

3风云免费服务器能跑springboot吗

3风云免费服务器是可以能springboot的,springboot项目在云服务器上的部署,总结如下:

1.购买云服务器

我购买的是华为云服务器,此外还可以在阿里云、腾讯云等平台购买。推荐使用Linux系统。

2.本机下载XShell 6 与XFtp 6

XShell 6:用于远程连接你的服务器(华为云服务器可以使用自带的CloudShell远程连接你的服务器)

XFtp 6:用于把本地文件上传至云服务器

3. 云服务器安装宝塔面板

宝塔面板是面向初学者的可视化工具,对Linux命令不了解,使用其可简化过程

1.打开xshell6,连接到服务器(或使用CloudShell)

2.访问:宝塔面板 - 简单好用的Linux/Windows服务器运维管理面板 (bt.cn)

3.点击:立即免费安装

所以3风云免费服务器是能跑springboot的


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:/SpringBoot/9922.html