如何在docker-compose.yml中省略Docker构建上下文?
在Docker Compose中实现空上下文构建
已知通过docker build -可以指定空上下文构建镜像,现在要在docker-compose.yml中实现同样效果,且不使用.dockerignore,具体方案如下:
配置docker-compose.yml
version: "3.8" services: srv1: build: context: "-" dockerfile: - srv2: build: context: .
执行构建命令
通过here-doc将Dockerfile内容传递给标准输入,执行构建:
cat << EOF | docker-compose build srv1 FROM ubuntu:22.04 RUN echo "I need no context to be built. Thnx" EOF
逻辑说明
context: "-"对应docker build -的空上下文逻辑,不会加载任何本地文件作为构建上下文dockerfile: -指定从标准输入读取Dockerfile内容- 管道传递的内联Dockerfile内容直接被docker-compose读取,完成无上下文的镜像构建
内容的提问来源于stack exchange,提问作者dzubape
相关产品推荐
相关产品推荐

