当前正在尝试运行脚本,但是我陷入了缺少的requirements.txt中。
这是.sh文件
#!/bin/bash -e
# Copyright 2019 IBM All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
if [ -z "$1" ]
then
echo "Usage: ./deployCapability.sh <ACTION NAME>"
exit 1
fi
docker run --rm -v "$PWD:/tmp" ibmfunctions/action-python-v3.7 bash -c "cd /tmp && virtualenv virtualenv && source virtualenv/bin/activate && pip install -r /boxai/requirements.txt"
zip -r $1.zip virtualenv __main__.py ./src/action.py ./src/storage.py config.json ./src/bsk_utils.py ./src/__init__.py
ibmcloud fn action update $1 --kind python:3.7 $1.zip --web true --timeout 600000
date
rm $1.zip
运行.sh时,我会完成安装setuptools,pip,wheel ...的安装过程。 完成。 就会吐出一个错误。
错误:无法打开需求文件:[Errno 2]没有这样的文件或目录:'requirements.txt'
我在哪里做错了什么?
更新:我的文件夹的位置在桌面上。我也将路径更改为/boxai/requirements.txt和/c/users/admin/desktop/boxai/requirements.txt...。不走运。
谢谢
答案 0 :(得分:0)
很难知道所在的文件,但是您已经用/tmp
将某些文件装载到-v "$PWD:/tmp"
上,但是丢失的文件似乎是{{ 1}},位于/boxai/requirements.txt
因此,也许您需要添加/tmp
,这假定您在运行Shell脚本的当前目录中有一个requirements.txt。
我也将路径更改为/boxai/requirements.txt
如果您从某个地方下载了此脚本,我会将其更改回以前的样子,然后将本地目录重新映射到容器中,以使其期望文件位于容器中,而不是基于您的路径主办。