如何解决无法在OpenShift在线平台上加载git-lfs文件
我需要在OpenShift在线平台上部署一个Web应用程序,这需要使用lfs使用存储在github repo中的文件。
在构建应用程序时,我收到此消息:
---> Running application from Python script (app.py) ...
generated new fontManager
Traceback (most recent call last):
File "app.py",line 72,in <module>
model.load_state_dict(torch.load(WEIGHTS_FILE,map_location=device))
File "/opt/app-root/lib/python3.6/site-packages/torch/serialization.py",line 585,in load
return _legacy_load(opened_file,map_location,pickle_module,**pickle_load_args)
File "/opt/app-root/lib/python3.6/site-packages/torch/serialization.py",line 755,in _legacy_load
magic_number = pickle_module.load(f,**pickle_load_args)
_pickle.UnpicklingError: invalid load key,'v'.
我猜想原因一定是重量文件由lfs存储。看起来OpenShift只是简单地git pull the repo而不是git-lfs pull。
当我使用其他Web服务平台(例如, GCP,Azure。
那么有可能打开终端控制台,然后我可以git pull repo吗?或者,还有其他选择吗?
PS:我正在用dockerfile进行构建,这是我的仓库:https://github.com/MemphisMeng/global-wheat-detection-web-app
解决方法
我不确定在构建Docker映像时git-lfs的播放方式。以及哪种类型的构建策略(我假设使用docker构建策略,因为这里有Dockerfile)。 我通常将模型文件与Docker映像分开,以保持较小的映像大小。
相反,我创建了一个持久卷安装并在其中加载了模型文件。然后,将卷安装作为DeploymentConfig的一部分。这与docker run -v SOURCE:DESTINATION IMAGE_NAME
资源
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。