如何使用Makefile将父文件夹复制到Dockerfile的当前目录中
我有一个makefile,如下所示:如何使用Makefile将父文件夹复制到Dockerfile的当前目录中,docker,makefile,Docker,Makefile,我有一个makefile,如下所示: push: docker build -t dataengineering/dataloader . docker tag dataengineering/dataloader:latest 127579856528.dkr.ecr.us-west-2.amazonaws.com/dataengineering/dataloader:latest docker push 127579856528.dkr.ecr.us-west-2.a
push:
docker build -t dataengineering/dataloader .
docker tag dataengineering/dataloader:latest 127579856528.dkr.ecr.us-west-2.amazonaws.com/dataengineering/dataloader:latest
docker push 127579856528.dkr.ecr.us-west-2.amazonaws.com/dataengineering/dataloader:latest
deploy:
@if [ ! "$(environment)" ]; then echo "environment must be defined" && exit 1; fi
@if [ ! "$(target)" ]; then echo "target must be defined" && exit 1; fi
kubectl delete deploy dataloader-$(target) -n dataengineering|| continue
kubectl apply -f kube/$(environment)/deployment-$(target).yaml -n dataengineering
但是我需要在数据加载器中有一个文件夹,以便dockerfile能够实际工作
这行吗
push:
cd ..; cp -r datastore/ dataloader/
docker build -t dataengineering/dataloader .
docker tag dataengineering/dataloader:latest 1111111111.dkr.ecr.us-west-2.amazonaws.com/dataengineering/dataloader:latest
docker push 11111111111.dkr.ecr.us-west-2.amazonaws.com/dataengineering/dataloader:latest
deploy:
@if [ ! "$(environment)" ]; then echo "environment must be defined" && exit 1; fi
@if [ ! "$(target)" ]; then echo "target must be defined" && exit 1; fi
kubectl delete deploy dataloader-$(target) -n dataengineering|| continue
kubectl apply -f kube/$(environment)/deployment-$(target).yaml -n dataengineering
我的dockerfile:
FROM python:3.7
WORKDIR /var/dataloader
COPY assertions/ ./assertions/
...
COPY datastore/ ./datastore/
RUN pip3 install -r requirements.txt
ENTRYPOINT ["python", "dataloader.py"]
如果您只需要将目录复制到当前目录(将服务器作为Docker上下文),则可以使用
cp-r../datastore/dataloader/
。除非您希望dataloader
目录与datastore
目录位于同一目录中,否则您需要执行cp-r../datastore/./dataloader/