工具 Scriptis 的安装部署

    前提:已经成功安装并可以正常使用了 Linkis 服务(后端和管理台服务),Linkis 的部署流程可以见

    示例说明:

    • linkis-gateway 服务的地址为 10.10.10.10 端口为 9001
    • Linkis 的管理台 nginx 部署在 10.10.10.10 端口为 8080

    2.2 安装 learn

    1. npm install lerna -g

    3.1 获取 scriptis 代码

    1. #通过git下载 >=dss 1.1.0 版本来编译scriptis组件
    2. git clone -b branch-1.1.0 https://github.com/WeBankFinTech/DataSphereStudio
    3. # 或则直接下载 zip 包 后解压
    4. https://github.com/WeBankFinTech/DataSphereStudio/archive/refs/heads/branch-1.1.0.zip
    5. #进入 web 目录
    6. cd DataSphereStudio/web
    7. lerna bootstrap

    3.2.1 配置 linkis-gateway 服务地址配置

    如果是在本地启动服务,需要在代码中配置后端 linkis-gateway 服务地址,在web/packages/dss/目录下的.env文件, 打包部署时不需要进行配置

    3.2.2 运行 scriptis 模块

    1. cd DataSphereStudio/web
    2. # 运行 scriptis 组件
    3. npm run serve --module=scriptis

    4.1 打包

    1. #指定 scriptis 模块
    2. cd DataSphereStudio/web
    3. #该指令成功执行后,web 目录下会出现一个名叫 `dist` 的文件夹,该文件夹即为打包好 scriptis 的组件资源代码。我们需要将该前端资源部署到 linkis-web 所在的 nginx 服务器上
    4. npm run build --module=scriptis

    4.2 部署

    将步骤 3.1 编译出来的静态资源 上传至 Linkis 管理台所在的服务器上,存放于/data/Install/scriptis-web/dist/, 在安装 Linkis 管理台的 nginx 服务器配置中,添加 scriptis 的静态资源访问规则,Linkis 管理台部署的 nginx 配置一般位于

    sudo vim /etc/nginx/conf.d/linkis.conf

    1. server {
    2. listen 8080;# 访问端口
    3. server_name localhost;
    4. #charset koi8-r;
    5. #access_log /var/log/nginx/host.access.log main;
    6. location / {
    7. root /appcom/Install/linkis-web/dist/; # 静态文件目录
    8. index index.html;
    9. }
    10. location /scriptis { #scriptis 的资源带有 scriptis 前缀与 linkis 管理台区分开
    11. alias /data/Install/scriptis-web/dist/ ; #nginx scriptis 静态文件存放路径 (可自定义)
    12. index index.html ;
    13. }
    14. .......
    15. location /api {
    16. proxy_pass http://10.10.10.10:9001; #gatway 的地址
    17. proxy_set_header Host $host;
    18. proxy_set_header x_real_ipP $remote_addr;
    19. proxy_set_header remote_addr $remote_addr;
    20. proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    21. proxy_http_version 1.1;
    22. proxy_connect_timeout 4s;
    23. proxy_read_timeout 600s;
    24. proxy_send_timeout 12s;
    25. proxy_set_header Upgrade $http_upgrade;
    26. proxy_set_header Connection upgrade;
    27. }
    28. #error_page 404 /404.html;
    29. # redirect server error pages to the static page /50x.html
    30. #
    31. error_page 500 502 503 504 /50x.html;
    32. location = /50x.html {
    33. root /usr/share/nginx/html;
    34. }
    35. }

    修改配置后,重新加载 nginx 配置

    1. sudo nginx -s reload

    注意 nginx 中,location 配置块中使用 root 和 alias 区别

    • root 的处理结果是:root 路径+location 路径.
    • alias 的处理结果是:使用 alias 路径替换 location 路径.
    • alias 是一个目录别名的定义,root 则是最上层目录的定义

    因访问 scriptis 需要进行登录验证,所以需要先进行登录,获取并缓存 cookie。

    5.2 登录成功后 访问 scriptis 页面

    1. #http://10.10.10.10:8080/scriptis/#/home

    nginxIp:Linkis 管理台所部署的 nginx 服务器 ip,port:nginx 配置启动的端口号,scriptis为请求 scriptis 项目静态文件 nginx 配置的 location 地址(可自定义设置)

    4.3 使用 scriptis

    step1 新建脚本 选择脚本类型为 sql 类型

    step2 输入要查询的语句

    效果图

    step3 运行

    效果图