我正在学习码头工具
我需要为docker镜像指定工作目录,我想这将是这样的:
version: '2'
services:
test:
build:
context: ./dir
现在我想让图片python:onbuild
在./dir
上投放,但我不想在Dockerfile
内创建任何./dir
。
docker-compose
手册没有说明这一点。
有可能吗?怎么做?
答案 0 :(得分:67)
我认为您正在寻找working_dir
。搜索" working_dir"在docker-compose reference。
答案 1 :(得分:3)
build configuration in Docker Compose最终只会调用docker build
,因此您需要使用Dockerfile来使用该工作流程。
正如docs for python:onbuild所说,你可以从一个只包含FROM python:onbuild
的最小Dockerfile开始。但正如他们所说,:onbuild
不是一个很好的选择,你可以更多地控制你自己的Dockerfile FROM python
。
答案 2 :(得分:0)
您可以如下指定工作目录。
version: '2'
services:
test:
build:
context: ./dir
working_dir: /dir
答案 3 :(得分:0)
可能不完全是您要查找的内容,但是您可以将Docker构建的“上下文”指定为与实际Dockerfile所在的目录不同的目录。
build:
context: ./folder/containing/files
dockerfile: path/to/dockerfile/relative/to/context/Dockerfile
无论Dockerfile实际在哪里,您Dockerfile中的任何ADD / COPY命令都像它们相对于context
一样起作用。