脚本开发 / 上传用户 Python 模块
在某些情况下,用户所需的 Python 模块并没有发布到 PYPI 平台,而是直接以文件形式存在。
这时,可以将这些文件上传到 DataFlux Func 的资源目录的「user-python-packages/」目录中,直接在脚本中引用。
1. 上传 Python 模块
用户可以根据实际情况选择上传方式,从结果上来说没有任何区别。
直接上传到宿主机
如果用户具有宿主机的访问权限,可以直接通过您熟悉的 SSH 工具等将 Python 文件 / 目录上传到 {安装目录}/data/resources/user-python-packages/ 目录下。
默认安装目录为 /usr/local/dataflux-func,如果不清楚,可以使用 cat /etc/dataflux-func 查看
使用「文件管理」上传
如果用户没有宿主机的访问权限,可以开启「管理 / 实验性功能 / 启用文件管理」后,在「管理 / 文件管理」中上传。
为了防止用户上传的 zip 压缩包在解压后破坏目录结构,在「文件管理」中解压会强制创建目录。
因此,如果上传的 zip 压缩包本身就有一层目录,解压后会多一层目录结构。
根据实际情况,将 Python 模块的目录移动到 user-python-packages/xxxxx 即可。
前往 user-python-packages/ 目录,确认需要上传的 Python 包目录。
2. 使用上传的 Python 模块
假设上传的 Python 模块如下:
| my_pkg/__init__.py | |
|---|---|
1 | |
| my_pkg/hello_world.py | |
|---|---|
1 2 | |
那么,可以直接在脚本中 import 此模块并使用,如:
| Python | |
|---|---|
1 2 3 4 5 | |
3. 注意事项
自行上传的 Python 模块注意不要与其他 Python 模块重名,也不要将原本 extra-python-packages 中存在的目录删除、改名等。