构建服务器端应用程序——第6部分:部署应用程序

在前面的教程中,您更新了web应用程序以访问ZAF api。在本教程中,您将在服务器上部署web应用程序,并在Zendesk Support中安装基本框架应用程序。亚博

本教程涵盖以下任务:

本教程是构建服务器端Zendesk应用程序系列的第6部分:亚博

部署web应用程序

如果你没有访问网络服务器的权限,你可以使用应用程序平台,比如Glitch或Heroku。根据不同的服务,你可以免费部署你的应用。本教程的web应用程序不需要大量的服务器资源,因为它只被代理或管理员偶尔使用,而不是普通公众。亚博电脑端

在本教程中,您将使用故障.Glitch提供了一个免费的计划。

为部署准备web应用程序

部署时,以下配置文件需要包含在web应用程序的根目录中:

  • start.sh
  1. app_remote文件夹,创建一个文件。将以下内容粘贴到文件中:

                   
    瓶= = 0.12.23密码= = 38.0.1PyJWT = =测试盒框python-dotenv = = 0.21.0请求= = 2.28.1

    该文件列出了应用程序运行所需的所有外部库。如果需要,更新每个库的版本号。要查找版本,请运行Pip3 show {package_name}命令。例子:

                   
    Pip3展示瓶
  2. app_remote文件夹,创建一个start.sh文件。将以下内容粘贴到文件中:

                   
    python3 app.py

    该文件包含Glitch用来启动web应用程序的shell命令。

    你的结构app_remote文件夹现在看起来是这样的:

                   
    \ app_remote应用程序py需求三种开始上海静态...\视图...
  3. app.py,替换最后一行(运行(主机=“localhost”,端口= 8080))与以下条件块:

                   
    如果操作系统环境得到“环境”= =“生产”运行宿主“0.0.0.0”港口int操作系统环境得到“端口”5000其他的运行宿主“localhost”港口8080

    该块有两个可能的运行语句:一个用于Glitch生产环境,另一个用于本地环境。在运行时,应用程序检查'ENVIRONMENT'变量来决定运行哪个变量。

  4. 保存start.sh,app.py

创建Glitch项目

在Glitch上创建一个空项目。

  1. 登录到Glitch,然后转到https://glitch.com/edit/ !/ simple-blank-project

  2. 点击混音创建您自己的Glitch项目副本。

  3. 作为可选步骤,更改应用程序的名称和描述。点击设置>编辑项目详细信息.编辑完名称和描述后,单击保存

上传网页应用到Glitch

将远程web应用程序作为ZIP文件上传到Glitch项目。

提示:如果你熟悉git和GitHub,你可以从GitHub回购导入web应用程序。看到从GitHub导入代码在Glitch文档中。

  1. 如果运行,按下停止Bottle服务器Ctrl + C

  2. 的内容进行压缩app_remote文件夹,包括.env文件,到一个ZIP文件名为app_remote.zip

    重要的是:不要包括app_remote文件夹本身的ZIP文件。您可以选择排除操作系统添加的任何配置文件和文件夹,例如.DS_Store__MACOSX.这些文件是不需要的,但它们不会干扰你的Glitch应用程序。

    例子:

                   
    cd tutorial_apps / app_remoteZip -r app_remote.zip。- x”。DS_Store" -x "__MACOSX"
  3. 在Glitch项目中,单击资产

  4. app_remote.zip资产

  5. 上传后,单击ZIP文件并复制其URL。

    您将在本教程的后面使用该URL。

  6. 在故障页面的底部,单击终端

  7. 在Glitch终端运行:

                   
    wget {zip_url}

    取代{zip_url}使用你在第5步复制的URL。

    命令返回如下信息:

                   
    保存到:'app_remote.zip?v = 123456

    复制引用的文件名,包括v ?参数。您将在下一步中使用它。

  8. 在同一个Glitch终端,运行:

                   
    解压缩{file_name}

    取代{file_name}使用您在第7步中复制的文件名。

  9. 在Glitch终端运行:

                   
    刷新

    web应用程序的文件现在出现在Glitch项目的下面文件

  10. 在Glitch终端运行:

                   
    Pip3安装-r requirements.txt

    该命令在应用程序中安装Python包文件。

  11. 作为可选步骤,从步骤4中删除ZIP文件和相关资产。他们不再需要,但他们不会干扰你的Glitch应用程序。

  12. 要获取web应用程序的URL,请单击分享复制生活网站链接。例子:

    https://亚博zendesk-server-side-app-tutorial.glitch.me

  13. 附加/侧边栏到URL。例子:

    https://亚博zendesk-server-side-app-tutorial.glitch.me/sidebar

    保存此URL。您将在本教程的后面使用它。

Glitch预览和Glitch侧栏URL返回一个405错误。这是意料之中的。您只能从已安装的Zendesk应用程序查看web应用程序。亚博

更新Zendesk应用亚博

更新已安装的Zendesk应用程序以显示g亚博litch托管的web应用程序。

  1. app_local文件夹,打开manifest.json文件中输入故障侧栏URLurl财产。例子:

                   
    “位置”“支持”“ticket_sidebar”“url”“https://亚博zendesk-server-side-app-tutorial.glitch.me/sidebar”“灵活”的真正的...
  2. 保存manifest.json

  3. 在shell中,导航到app_local文件夹中。在文件夹中运行:

                   
    zcli应用:更新

    该命令更新并部署您之前安装的Zendesk应用程序。亚博

  4. 部署Zendesk应亚博用程序后,在浏览器中重新加载Agent Workspace页面。应用程序应该显示开始页面。

恭喜你!您将web应用程序部署在服务器上,并在Zendesk Support中安装基本框架应用程序。亚博如果你愿意,你可以继续调整和增强应用程序。例如,您可以添加一个页面,让代理向Asana项目添加技术备注想法。

如果您构建的服务器端应用程序对其他支持组织可能有用,请考虑将其公开提供给Zendesk市场。亚博看到在Zendesk市场发布应用亚博