我正在使用Docker19。我在docker-compose.yml文件中有此文件...
var tiger = function(name, info) {
var obj = {};
obj.behave = info;
console.log("tiger: " + name + " " + obj.behave);
obj.tigerInner = function(){
console.log('name: ' + name);
console.log("tigerInner, behave: " + obj.behave);
};
return obj;
}
var test = tiger("tiger", "eating");
test.tigerInner();
在我的本地文件系统上,请注意我在挂载的卷中有此文件...
python:
restart: always
build: ./python
#ports: # to access the container from outside
# - "8000:8000"
environment:
DEBUG: 'true'
#command: /usr/local/bin/gunicorn directory.wsgi:application --reload -w 2 -b :8000
volumes:
- /Users/davea/projects/my_python_project:/my-app
depends_on:
- sql-server-db
Python Dockerfile如此开始
$ ls /Users/davea/projects/my_python_project/requirements.txt
/Users/davea/projects/my_python_project/requirements.txt
但是,当我运行docker-compose up时,它死于此错误
FROM python:3.8-slim
RUN apt-get update && apt-get install
RUN apt-get install -y unixodbc-dev
RUN apt-get install -y g++
RUN python -m pip install --upgrade pip
WORKDIR /my-app/
COPY requirements.txt requirements.txt
我很困惑如何命名我的卷,以便Docker可以访问适当的文件。
答案 0 :(得分:0)
在您的Dockerfile中,命令“ COPY”尝试从“ ./python/requirements.txt”中复制文件,该文件在当前docker build context中不存在。
由于您要在Docker卷中复制文件,因此可以将该卷挂载到Docker容器所需的位置,然后从Dockerfile中删除COPY命令。 另一个选择是将“ requirements.txt”放置到您在docker-compose中使用的“ ./python/”目录中。