Qt Automotive Suite 部署服务器安装

在虚拟环境中设置服务器

在您在 Python 虚拟环境中安装依赖项之前,您需要安装 libffi-devpython-pkg-resourcespython-devlibssl-dev 软件包。然后,准备虚拟环境

virtualenv -p python2.7 ./venv
./venv/bin/pip install -r requirements.txt

在运行服务器之前,务必将 appstore/settings.py 中的 APPSTORE_* 设置适配到您的环境。

请注意的一个配置组是分类图标调整大小和着色设置。它们是:ICON_SIZE_XICON_SIZE_YICON_DECOLOR。默认情况下,ICON_DECOLOR 为 False,它控制移除分类图标的颜色和 alpha 通道,并将相同图像作为 alpha 通道应用。

ICON_SIZE_XICON_SIZE_Y 是最大的图标大小,图标以这种方式缩放,不要超过这个大小,同时保持图标的纵横比。默认值是 50x50,所以您应该知道,除非服务器重新配置,否则任何上传的图标都将限制在这的大小。

由于套餐下载通过临时文件完成,您需要设置 cron-job 定期删除这些临时文件。cron-job 应每 settings.APPSTORE_DOWNLOAD_EXPIRY/2 分钟触发;它需要运行

./manage.py expire-downloads

激活 Python 虚拟环境

在运行 manage.py 之前,在您将使用它的控制台中使用源激活脚本。

. ./venv/bin/activate

此激活在每个会话中只进行一次

在服务器上准备好您的数据库

在运行服务器之前,首先,您需要准备好数据库。此外,您需要创建一个管理员用户。

./manage.py makemigrations
./manage.py migrate
./manage.py createsuperuser

请确保服务器为 Neptune 3 UI 的下载应用程序添加了一个用户。目前用户名和密码硬编码在 apps/com.pelagicore.downloads/stores/ServerConfig.qml:78 中。

启动服务器

要启动服务器,请在您的终端中运行以下命令

./manage.py runserver 0.0.0.0:8080

此命令在端口 8080 上启动服务器,任何人都可以访问。您可以将侦听地址替换为适合您用例的另一个地址。

维护服务器

  • 清理下载目录
    ./manage.py expire-downloads

    此命令删除下载目录中所有大于 settings.APPSTORE_DOWNLOAD_EXPIRY 分钟的文件。理想情况下,此命令应通过 cron-job 运行。

  • 手动验证要上传的软件包
    ./manage.py verify-upload-package <pkg.appkg>

    此命令验证 <pkg.appkg> 是否是一个有效的软件包,可以上传到下载应用程序。

  • 手动添加存储签名到软件包
    ./manage.py store-sign-package <in.appkg> <out.appkg> [device id]

    本命令首先验证 <in.appkg>。如果验证成功,则将 <in.appkg> 复制到 <out.appkg> 并添加存储签名。可选的 [设备ID] 参数将生成的包锁定在此ID的设备上。

©2020 Qt公司版权所有。本文档中的文档贡献是其各自所有者的版权。提供的文档是根据自由软件基金会发布的 1.3 版 GNU自由文档许可协议 许可的。Qt 及其相关标志是芬兰及/或其他国家的 Qt公司商标。所有其他商标均为各自所有者的财产。