正如此stackoverflow 帖子中所回答的,无法通过受支持的方法使用额外的 python 模块自定义 datalab。我的建议是将 python 脚本/cron 作业安装在 datalab 之外的另一个系统中,就像使用任何要运行的与 datalab 无关的 python 脚本一样。
真的很长边注:
如果您必须在 datalab 容器中运行程序,因为您想使用 datalab 特定的 gcp 库,那么我建议以下不受支持(但有创意)的设置对我有用。但是,它涉及运行本地数据实验室容器以及云数据实验室容器。
- 本地安装datalab
- 将以下内容附加到文件
Dockerfile.in
文件中
$REPO_DIR/containers/datalab/Dockerfile.in
# Add a custom script which calls a custom program (python file)
ADD mycustomprogram.sh /usr/local/bin/mycustomprogram.sh
# Allow the script to be executed
RUN chmod +x /usr/local/bin/mycustomprogram.sh
- 修改
ENTRYPOINT
变量 in$REPO_DIR/containers/datalab/run.sh
以指向您的自定义脚本
现在,您在 datalab 本地容器中运行了一个自定义脚本。
通过本地设置,您仍然可以使用主机上的任何 git 客户端提交到同一个 Google 托管的 git 存储库。gcloud 有一个简单的提示,它将指导您完成克隆 Google 托管的 git 存储库的过程。
简单地运行gcloud init
。
登录后,您应该会看到以下提示,询问您是否要使用 Google 托管的存储库:
Do you want to use Google's source hosting (Y/n)?
重要提示:这只是在我们等待其他数据实验室自定义选项时临时解决的问题。我更喜欢编辑云 Dockerfile.in 文件,而不是部署本地数据实验室实例,以安装自定义 python 程序。