serv00搭建【JAVA版】jetbrains激活码生成网站

直接开始正片:

开启serv00个人服务

开启serv00端口

添加开放端口,你的服务搭建在哪个端口上就输入哪个端口,我将服务部署在10768端口,所以这里输入10768,类型TCP,直接点击ADD

新建cloudflare DNS解析

在cloudflare上添加二级域名解析,ipv4地址可以随意填写我这里使用cloudflare的ip,你也可以填写自己服务器的ip,不要开启小云朵。

在serv00管理页面添加DNS域名

查看解析记录

找到解析A记录的ip地址

将cloudflare的解析ip修改为A记录的ip地址,并开启小云朵

开启始终使用 HTTPS

在serv00上添加站点,域名填写解析的二级域名(例如:jb.example.xyz),类型选择Proxy,端口选择刚才开放的端口10768,不要勾选Use HTTPS

添加站点后会在服务器的domains目录下生成和你的二级域名一样的文件夹
image

部署包根据以下帖子制作,感谢大佬
【Jetbrains License】纯Java版本地搭建,了解/学习/质疑/解决/熟悉/掌握/改造,一站式证书/Agent/ActiveCode生成

下载部署压缩包(临时注册的Tebi存储)
Jetbrains-Help部署包链接

通过File manager将部署压缩包上传到serv00服务器中,你的二级域名文件夹下


image
SSH连接serv00服务器,使用unzip命令解压

unzip Jetbrains-Help.zip

image

1.修改application.yml文件中的账号密码和端口

端口号一定要与之前开放的serv00端口相同,否则无法启动

spring:
  application:
    name: Jetbrains-Help
  thymeleaf:
    cache: false
  security:
    user:
      #请自行修改账户密码
      name: admin
      password: admin123
server:
  #请自行修改端口
  port: 10768
help:
  default-license-name: 光云
  default-assignee-name: 藏柏
  default-expiry-date: 2111-11-11

2.修改启动脚本start.sh中的路径

只需要修改标注的两处地址

#!/bin/bash
# 脚本设置 Java 运行时参数和启动应用程序
JAVA_OPTS="-Duser.timezone=GMT+08"
JAVA_OPTS="$JAVA_OPTS -Djava.security.egd=file:/dev/./urandom"

# 修改下面的路径为你的二级域名文件夹地址
JAVA_OPTS="$JAVA_OPTS -Dspring.config.location=/usr/home/username/domains/jb.example.xyz/application.yml"
JAVA_OPTS="$JAVA_OPTS -Xss256m"
JAVA_OPTS="$JAVA_OPTS -Xmx256m"

# 修改下面的路径为你的二级域名文件夹地址
JAR_PATH="/usr/home/username/domains/jb.example.xyz/Jetbrains-Help.jar"

# 启动应用程序的函数
start() {
    # 检查是否已经有该进程在运行
    PID=$(pgrep -f "$JAR_PATH")
    if [ -n "$PID" ]; then
        echo "应用程序已经在运行(PID:$PID)。"
    else
        echo "正在启动应用程序..."
        java $JAVA_OPTS -jar $JAR_PATH &  # 在后台运行应用程序
        echo "应用程序已启动。"
    fi
}

# 停止应用程序的函数
stop() {
    # 查找正在运行的进程 ID
    PID=$(pgrep -f "$JAR_PATH")
    if [ -n "$PID" ]; then
        echo "正在停止应用程序(PID:$PID)..."
        kill $PID  # 停止应用程序进程
        echo "应用程序已停止。"
    else
        echo "应用程序没有在运行。"
    fi
}

# 重启应用程序的函数
restart() {
    stop
    sleep 5
    start
}

# 主函数:根据命令行参数执行操作
case "$1" in
    start)
        start
        ;;
    stop)
        stop
        ;;
    restart)
        restart
        ;;
    *)
        echo "用法:$0 {start|stop|restart}"
        exit 1
        ;;
esac

3.服务,启动!开始爽

在二级域名文件目录下运行启动脚本

# cd 进入你的二级域名文件夹
cd  /usr/home/username/domains/jb.example.xyz
# 添加脚本权限
chmod +x start.sh
# 启动服务
./start.sh start
# 重启动服务
./start.sh restart
# 关闭服务
./start.sh stop

出现下列信息表示启动成功,可以直接Ctrl +C,程序会在后台运行
image

输入你的二级域名进入网站,输入在application.yml文件中设置的账号和密码
image

关于原项目修改部分

  • 添加了spring-boot-starter-security用于鉴权
    1.添加pom.xml依赖
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-security</artifactId>
        </dependency>

2.添加SecurityConfig类

package com.jetbrains.help.config;

import org.springframework.context.annotation.Configuration;
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;

@Configuration
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {

    @Override
    protected void configure(HttpSecurity http) throws Exception {
        http
                // 关闭csrf防护
                .csrf().disable()
                .headers().frameOptions().disable()
                .and();

        http
                .formLogin()
                // 使用默认登录页面
                .loginProcessingUrl("/login") // 登录表单的提交 URL
                .defaultSuccessUrl("/") // 登录成功后的跳转页面
                .failureUrl("/loginError") // 登录失败后的跳转页面
                .permitAll()
                .and();

        http
                .authorizeRequests() // 授权配置
                // 允许访问无需权限的资源
                .antMatchers("/static/**").permitAll()
                // 其他请求都需要经过认证
                .anyRequest().authenticated()
                .and();
    }

}

3.添加相应的配置

spring:
  application:
    name: Jetbrains-Help
  thymeleaf:
    cache: false
# 添加配置
  security:
    user:
      name: admin
      password: admin
server:
  port: 10768
help:
  default-license-name: 光云
  default-assignee-name: 藏柏
  default-expiry-date: 2111-11-11

关于后续更换密码的操作

直接修改二级域名目录下的application.yml文件中的账号和密码
image

重启服务

./start.sh restart

关于serv00服务器重启的问题

听说serv00会不定时重启 :sweat_smile:直接添加两个定时任务你如何应对?
在serv00页面添加定时任务

/usr/home/username/domains/jb.example.xyz/start.sh restart

再添加一个每小时重启一次的定时任务,有备无患

感谢

【Jetbrains License】纯Java版本地搭建,了解/学习/质疑/解决/熟悉/掌握/改造,一站式证书/Agent/ActiveCode生成

32 个赞

这个服务都快有全语言版本了,厉害 :+1:

3 个赞

两个帖子都是你第一个来水 :smiling_face_with_three_hearts:

3 个赞

技术佬

3 个赞

必须支持呀

2 个赞

大佬

1 个赞

小声问一下,这架设好了,怎么在idea激活

1 个赞

佬~

1 个赞

这速度也太快了

1 个赞

善用论坛搜索 :joy:,或者查看本帖的引用贴

1 个赞

好好好

1 个赞

:cow::cow::cow:

1 个赞

好好好,jetbrains激活都快烂大街了现在 :joy:

1 个赞

大佬好强

1 个赞

:speak_no_evil:大佬牛逼

1 个赞

爱死你了

1 个赞

马克马克

1 个赞

项目原作者来啦 :smiling_face_with_three_hearts:,我只是站在各位巨人的肩膀上

1 个赞

好好好

1 个赞

好东西 mark一下

1 个赞