侧边栏壁纸
博主头像
平常心的blog 博主等级

行动起来,活在当下

  • 累计撰写 12 篇文章
  • 累计创建 16 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

Jpom从入门到入坑(三)

平常心
2024-10-15 / 0 评论 / 0 点赞 / 6 阅读 / 0 字

8. Jpom的【功能管理->脚本管理】

8.1 节点脚本列表

【节点脚本列表】里的脚本和【脚本列表】里的脚本的区别是节点脚本只能指定一个节点执行,脚本列表里的脚本可以指定多个节点执行。

1.列表

1.webp

2.【新增】通过【脚本库】管理通用脚本

2.webp

3.webp

执行方式有三种:a). 手动执行。b). 定时执行。c). 通过触发器执行。

3.【执行】手动执行

4.【日志】查看执行日志

5.【触发器】通过连接触发执行

  1. 测试脚本可以获得DSL中的参数
echo "=============$1"
echo "-------------$boot_active"

8.2 脚本列表

1.列表

4.webp

2.下面脚本是【在线构建】中的最后一步,选择的脚本。描述中的success标志着构建发布成功后执行的脚本。

5.webp

3.【新增】脚本名称和脚本内容,可以选择【定时执行】和【分发的节点】

6.webp

6-1.webp

4.【执行】
手动执行创建的脚本,在选中的节点中执行。

5.【触发器】通过提供的链接,请求链接触发执行脚本。

8.3 脚本执行记录

显示脚本执行的记录

8.4 环境变量

1.列表

7.webp

8.webp

2.【新增】

9.webp

9. Jpom的【功能管理->在线构建】

9.1 仓库管理

1.列表

10.webp

2.【新增】使用用户名密码增加代码仓库地址

11.webp

3.【令牌导入】使用令牌导入仓库

12.webp

4.【关联】查看仓库关联的构建

13.webp

9.2 构建列表

1.列表,显示所有的构建流程。

14.webp

2.【新增】添加构建流程
a). 第一步:选择【构建方式】:【本地构建】

15.webp

b). 第二步:【基础信息】,选择代码仓库。

16.webp

c). 第三步:【构建流程】

17.webp

d). 第四步:【发布操作】。这里分为六种【发布操作】

1). 不发布

18.webp

2). 节点发布。选择创建的【分发】发布

19.webp

3). 项目。选择创建的【项目】发布

20.webp

4). SSH。使用SSH节点发布,发布前后执行发布脚本。类似于jenkins。

21.webp

22.webp

发布前脚本:主要是构建Docker镜像并启动。

docker_name=ruoyi-admin;
cd /root/RuoYi-Vue-Plus;

oldInstances=$(docker ps -a --format '{{.Names}}' | grep -q $docker_name);
echo "查看实例是否存在:${oldInstances}";

if docker ps -a --format '{{.Names}}' | grep -q $docker_name; then
  echo "开始-----移除已经存在的实例 ==> ${docker_name}";
  docker rm -f ${docker_name};
  echo "结束-----移除已经存在的实例 ==> ${docker_name}";
else
  echo "容器 $docker_name 不存在。"
fi

if test "$(docker images -q $docker_name:latest 2> /dev/null)" = "";then
    echo "不存在镜像 ==> ${docker_name}"
else
    echo "移除镜像 ==> ${docker_name}"
    docker rmi -f $docker_name;
fi

发布后脚本:

docker_name=ruoyi-admin;
cd /root/RuoYi-Vue-Plus;

echo "开始------构建镜像 ==> ${docker_name}"
docker build -t $docker_name .;
echo "结束------构建镜像 ==> ${docker_name}"
# date;

echo "开始-----创建实例 ==> ${docker_name}";
docker run -v /mnt/ruoyi-admin/logs:/ruoyi/server/logs \
    --restart=on-failure:10 \
    -e "TZ=Asia/Shanghai" \
    -e "SPRING_PROFILES_ACTIVE=prod" \
    -p 8080:8080 --name ${docker_name} -d ${docker_name};
echo "结束-----创建实例 ==> ${docker_name}";

5). 本地命令。在本地执行脚本完成发布构建产物。

23.webp

6). Docker镜像

24.webp

e). 第五步:其他配置

25.webp

容器构建,没有在容器中构建的构建流程。可以自行摸索。

26.webp

3.【构建】,直接构建和后台构建

4.【编辑】可选择哪一步就行编辑

27.webp

5.【触发器】可以通过触发器编程完成,什么时候构建。

6.【环境变量】

28.webp

9.3 构建历史

构建历史查看所以的构建记录,可以查看构建日志,下载构建日志和构建产物。

29.webp

10 Jpom的【功能管理->文件管理】

10.1 文件列表

1.列表

30.webp

2.【上传文件】

31.webp

3.【远程下载】

32.webp

4.【发布】创建文件发布任务

33.webp

10.2 静态文件

静态文件,扫描配置路径中的静态文件。

10.3 发布任务

1.列表,显示【文件列表】中【发布】创建的文件分发任务。

34.webp

2.【查看】

35.webp

3.【重建】

36.webp

上传后的脚本:

cd /mnt/nginx;
echo $FILE_ID
echo """
user              root;
worker_processes  2;

events {
    worker_connections  10240;
}

http {
    include       mime.types;
    default_type  application/octet-stream;

    sendfile        on;
    underscores_in_headers on; 
    keepalive_timeout  65;

    gzip on; # 启用gzip压缩,默认是off,不启用
    # 对js、css、jpg、png、gif格式的文件启用gzip压缩功能
    gzip_types application/javascript text/css image/jpeg image/png image/gif;
    gzip_min_length 1024; # 所压缩文件的最小值,小于这个的不会压缩
    gzip_buffers 4 1k; # 设置压缩响应的缓冲块的大小和个数,默认是内存一个页的大小
    gzip_comp_level 1; # 压缩水平,默认1。取值范围1-9,取值越大压缩比率越大,但越耗cpu时

  

    upstream ruoyiadmin{
        server 192.168.31.100:8082;
    }

    server {
        listen 8081;
    
        location / {
            root /root/ruoyi-web;
            try_files $uri $uri/ /index.html;
            index index.html index.htm;
        }

        location /prod-api/ {

            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

            proxy_pass http://ruoyiadmin/;
            proxy_connect_timeout 600;
            proxy_read_timeout 600;
            client_max_body_size    10000m;
        }
    }

    # upstream yudaoadmin{
    #     server 192.168.31.100:48080;
    # }

    server {
        listen 48081;
    
        location / {
            root /root/yudao-web;
            try_files $uri $uri/ /index.html;
            index index.html index.htm;
        }

        # location /prod-api/ {

        #     proxy_set_header Host $host;
        #     proxy_set_header X-Real-IP $remote_addr;
        #     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

        #     proxy_pass http://yudaoadmin/;
        #     proxy_connect_timeout 600;
        #     proxy_read_timeout 600;
        #     client_max_body_size    10000m;
        # }
    }
}
""" > nginx.conf
0

评论区